无法在 Apache 2.4.58 CENTOS 7 上运行 PHP 8.3

问题描述 投票:0回答:1

我目前正在升级我的服务器,从 PHP 7.3 迁移到 PHP 8.3,从 Apache 2.4.6 迁移到 Apache 2.4.58。该网站使用 PHP 7.3 正常加载。但是,当我尝试使用 PHP 8.3 和 Apache 2.4.58/2.4.6 时,该网站无法加载,并且 Apache 似乎无法检测到已安装的 PHP。

PHP 代码没有被执行:

  • PHP ERROR
  • PHP ERROR 2

但是,当我如下配置时:

  • PHP 7.3 和 Apache 2.4.6,它可以工作
  • PHP 7.3 和 Apache 2.4.58,它可以工作
  • PHP 8.3 和 Apache 2.4.6,它不起作用(Apache 无法读取 PHP)
  • PHP 8.3 和 Apache 2.4.58 不起作用(Apache 无法读取 PHP)

我怀疑 PHP 8.3 可能有问题,但我无法确定具体问题。 (我无法查明确切的问题。)经过进一步调查,我在 apache 日志中发现了一个错误:

AH01276: Cannot serve directory /var/www/html/: No matching DirectoryIndex (index.html,index.php,index.php) found, and server-generated directory index forbidden by Options directive

我想澄清两点:

  • 如果这个问题与兼容性有关,那么哪个版本的 Apache 与 PHP 8.3 兼容?我进行了大量搜索,但没有找到确凿的信息。

  • 如果这个问题与兼容性无关,我的 Apache 配置或安装的 PHP 模块是否有错误?

任何有关解决此问题的见解或指导将不胜感激。谢谢!

更多背景信息:

  1. apache错误日志:
    https://pastebin.com/8JnQyTqV
  2. apache 配置 httpd.conf:
    https://pastebin.com/TbxLMekb
  3. 安装了 yum 模块:
    https://pastebin.com/ePZwZDUZ
  4. /httpd/conf.modules.d/20-php.conf:
    https://pastebin.com/UbwKpMg8
  5. /httpd/conf.d/php.conf:
    https://pastebin.com/QAh1iA17
php apache centos7 httpd.conf
1个回答
0
投票

所以我也有类似的问题。我尝试降级 Apache,然后降级 PHP。 执行 PHP 时仍然存在问题。

经过大量搜索和反复试验,这对我有用。

在 httpd.conf 中,我在其他 LoadModule 条目下添加了以下内容: LoadModule php_module php8apache2_4.dll PHPIniDir="C:/php"

然后在 MIME 部分: AddType 应用程序/x-httpd-php .php

希望这有帮助。

© www.soinside.com 2019 - 2024. All rights reserved.