PHP7.4 无法在 apache2 上运行

PHP7.4 无法在 apache2 上运行

我正在尝试在 Apache2 上运行 php7.4。出于某种原因,当我尝试在代码中运行任何 php 脚本时,它们都不会运行,并且显示的只是注释。

我的代码中的内容如下:

<?php                                                                                                                  
include("developers.php");                                                                                             
?> 

然而,在浏览器中加载时,html 源代码显示的内容如下:

<!--?php
include("developers.php");
?--!>

我已经用多个不同的脚本测试过这个问题,所以我不认为这是 php 本身的问题。我还安装了 php7.4 以及 libapache2-mod-php7.4。我还在 apache2 中启用了 php7.4 模块。此外,我尝试了多种不同的.htaccess配置apache2.conf,包括添加

<FilesMatch "\.php$">
    SetHandler application/x-httpd-php
</FilesMatch>

<FilesMatch "/.php$">
    SetHandler application/x-httpd-php
</FilesMatch>

我注意到,当我不包含<FilesMatch>标签时,php 代码将会运行,但是页面本身会中断,并且我页面上的 javascript 和 css 无法正常运行。

我还在以下部分注释掉了php7.4.conf

# 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>

如果有帮助的话,我正在 Debian 11 上运行我的服务器。

谁能帮我这个?

注意:该问题最初出现在 StackOverflow 上,但是那里的一位用户告诉我将其重新发布到这里,因为它与 StackOverflow 无关。

也无 https://stackoverflow.com/questions/12828163/why-are-my-php-tags-converted-to-html-comments https://stackoverflow.com/questions/5121495/php-code-is-not-being-executed-but-the-code-shows-in-the-browser-source-code PHP 未在 apache2 中解析,php 模块已安装并启用 回答我的问题。

我也找到了其他几个类似问题的答案,由于现在无法找到所有链接,所以我不会在这里链接,但我找不到任何有用的东西。

答案1

遇到了类似的问题。PHP 在终端中可以工作,但 apache2 似乎无法解析它。重新安装了所有应用程序,但没有任何效果。

然后我看到了 apache2.conf 文件,其中写着

包括可选的 mods-enabled/*.conf

它正在从 mods-enabled 文件夹加载文件。当我执行 ls -l 时,我意识到有一个损坏的符号链接。取消链接并为已安装的 php 版本创建一个新的符号链接,然后一切又恢复正常。

相关内容