如果我使用 Apache2 时所有 PHP 页面都变成空白,我该怎么办?

如果我使用 Apache2 时所有 PHP 页面都变成空白,我该怎么办?

这是我的问题

最近我清除了所有 LAMP 软件包,因为我无法让虚拟主机与本地 wordpress 安装配合使用。但即使安装了所有软件包,PHP 页面仍然无法加载。它们全都空白,如果您要求查看页面源代码,您可以在那里看到 php 源代码。

我附上了一份我已尝试过的内容列表以及我认为您可能需要的日志和配置。请帮助我,如果您需要更多内容来解决问题,请告诉我。

我已经尝试过的事情:

  1. 更新所有软件包
  2. 清除并重新安装所有 LAMP 包
  3. mpm_event 已被禁用
  4. php 模块在 apache 模块中启用
  5. 尝试设置首选 php 版本
  6. libapache2_mod_php 已安装
  7. 安装 php 和其他模块指定版本号
  8. 所有 PHP 错误报告均已打开
  9. 将以下代码添加到 apache2.conf 中会导致 Apache 崩溃:
AddHandler php5-script .php
AddType text/html .php
  1. 卸载所有软件包并使用“lamp-server^”软件包安装 lamp
  2. 在用户目录中启用 PHP
  3. 在 php.ini 中启用短标签
  4. default_mimetype = "text/html"已在我的 php.ini 中启用

这是我的 Apache 错误日志

[Fri Dec 11 09:46:11.126711 2020] [mpm_prefork:notice] [pid 1447] AH00163: Apache/2.4.46 (Ubuntu) configured -- resuming normal operations
[Fri Dec 11 09:46:11.126805 2020] [core:notice] [pid 1447] AH00094: Command line: '/usr/sbin/apache2'
[Fri Dec 11 10:08:32.375532 2020] [mpm_prefork:notice] [pid 1447] AH00169: caught SIGTERM, shutting down

以下是我的 Apache 访问日志显示的请求内容

::1 - - [10/Dec/2020:10:16:30 +0530] "GET /info.php HTTP/1.1" 200 224 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36"

这是我的 PHP 模块 mods-enabled conf:

<FilesMatch ".+\.ph(ar|p|tml)$">
    SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch ".+\.phps$">
    SetHandler application/x-httpd-php-source
    # Deny access to raw php sources by default
    # To re-enable it's recommended to enable access to the files
    # only in specific virtual host or directory
    Require all denied
</FilesMatch>
# Deny access to files without filename (e.g. '.php')
<FilesMatch "^\.ph(ar|p|ps|tml)$">
    Require all denied
</FilesMatch>

# Running PHP scripts in user directories is disabled by default
# 
# To re-enable PHP in user directories comment the following lines
# (from <IfModule ...> to </IfModule>.) Do NOT set it to On as it
# prevents .htaccess files from disabling it.
#<IfModule mod_userdir.c>
#    <Directory /home/*/public_html>
#        php_admin_flag engine Off
#    </Directory>
#</IfModule>

附言

  • 我已经安装了 php 7.4
  • 之前我已经安装了 mariadb 服务器
  • 现在我已经安装了 mysql-server

答案1

我会看看这个问题的答案:PHP 返回空白页 归根结底是“您的权限正确吗?”

根据这个问题:https://stackoverflow.com/questions/2096255/what-permissions-for-php-scripts-directories, “您需要将.php文件的权限设置640为最高安全性。”

相关内容