Назад | Перейти на главную страницу

Как я могу заставить мой сервер выполнять (вместо отображения исходного кода) PHP?

У меня возникают проблемы с запуском PHP вместо того, чтобы обрабатывать его как обычный текст.

Я нахожусь на новом сервере разработки Debian 10 и установил, например, apache2 и libapache2-mod-php, который установил libapache2-mod-php7.3, но a2enmod не находит модуль PHP для выполнения. /etc/apache2/mods-available имеет:

access_compat.load    dir.conf          proxy_express.load
actions.conf          dir.load          proxy_fcgi.load
actions.load          dump_io.load      proxy_fdpass.load
alias.conf        echo.load         proxy_ftp.conf
alias.load        env.load          proxy_ftp.load
allowmethods.load     expires.load      proxy_hcheck.load
asis.load         ext_filter.load       proxy_html.conf
auth_basic.load       file_cache.load       proxy_html.load
auth_digest.load      filter.load       proxy_http2.load
auth_form.load        headers.load      proxy_http.load
authn_anon.load       heartbeat.load        proxy.load
authn_core.load       heartmonitor.load     proxy_scgi.load
authn_dbd.load        http2.conf        proxy_uwsgi.load
authn_dbm.load        http2.load        proxy_wstunnel.load
authn_file.load       ident.load        ratelimit.load
authn_socache.load    imagemap.load     reflector.load
authnz_fcgi.load      include.load      remoteip.load
authnz_ldap.load      info.conf         reqtimeout.conf
authz_core.load       info.load         reqtimeout.load
authz_dbd.load        lbmethod_bybusyness.load  request.load
authz_dbm.load        lbmethod_byrequests.load  rewrite.load
authz_groupfile.load  lbmethod_bytraffic.load   sed.load
authz_host.load       lbmethod_heartbeat.load   session_cookie.load
authz_owner.load      ldap.conf         session_crypto.load
authz_user.load       ldap.load         session_dbd.load
autoindex.conf        log_debug.load        session.load
autoindex.load        log_forensic.load     setenvif.conf
brotli.load       lua.load          setenvif.load
buffer.load       macro.load        slotmem_plain.load
cache_disk.conf       md.load           slotmem_shm.load
cache_disk.load       mime.conf         socache_dbm.load
cache.load        mime.load         socache_memcache.load
cache_socache.load    mime_magic.conf       socache_shmcb.load
cern_meta.load        mime_magic.load       speling.load
cgid.conf         mpm_event.conf        ssl.conf
cgid.load         mpm_event.load        ssl.load
cgi.load          mpm_prefork.conf      status.conf
charset_lite.load     mpm_prefork.load      status.load
data.load         mpm_worker.conf       substitute.load
dav_fs.conf       mpm_worker.load       suexec.load
dav_fs.load       negotiation.conf      unique_id.load
dav.load          negotiation.load      userdir.conf
dav_lock.load         proxy_ajp.load        userdir.load
dbd.load          proxy_balancer.conf   usertrack.load
deflate.conf          proxy_balancer.load   vhost_alias.load
deflate.load          proxy.conf        xml2enc.load
dialup.load       proxy_connect.load

Мне кажется, что PHP не указан.

Есть ли другие шаги, помимо установки Apache, PHP и библиотеки Apache PHP, чтобы иметь возможность a2enmod PHP?

Спасибо,

Вы выполнили следующие команды после проверки работы Apache?

  • sudo apt update
  • sudo apt установить php libapache2-mod-php

А вы после установки перезапускали Apache?

  • sudo systemctl перезапустить apache2

Это все, что мне нужно было сделать, чтобы он работал в Debian 10.

Тест

Поместите файл с именем index.php в корневой веб-каталог вашего сервера. Он должен содержать это:

<?php
phpinfo();
?>

Затем откройте веб-браузер и укажите в нем свой сервер.

Если php работает, вы должны увидеть гораздо больше, чем то, что вы поместили в файл.