我试图在一个项目上执行一些PHP代码(使用Dreamweaver),但代码没有运行。

当我检查源代码时,PHP代码显示为HTML标记(我可以在源代码中看到它)。Apache运行正常(我正在使用XAMPP), PHP页面正在正常打开,但PHP代码没有被执行。

有人有什么建议吗?

注意:该文件已经命名为filename.php

编辑: 代码. .:

<?
include_once("/code/configs.php");
?>


当前回答

我有一个案例,我不小心开始解压我的文件目录在根。它从我的文件文件夹中添加了。htaccess文件,这将阻止所有php

# If we know how to do it safely, disable the PHP engine entirely.
<IfModule mod_php5.c>
  php_flag engine off
</IfModule>

底线检查根目录下的.htaccess文件。

其他回答

如果我们在同一页做下面

Sudo apt-get install PHP Sudo apt-get install php-{bcmath,bz2,intl,gd,mbstring,mysql,zip,fpm} -y

要在Apache2中启用PHP 7.2 FPM,请执行以下操作:

A2enmod proxy_fcgi SetenVIF

a2enconf php7.2-fpm

更新2:Apache下载。php文件而不是渲染

在那之后,我遇到了上面的问题。还有类似的问题。

我不知道为什么,但它只发生在我的。php文件在/var/www/html/根文件夹。对于子目录来说一切正常。(例如wordpress和phpmyadmin工作得很好)

这就是我的解。我决定启用php模块。所以我运行了这个命令:

a2enmod php7.2

但我得到了这个错误:

考虑php7.2依赖mpm_prefork: 考虑mpm_prefork的冲突mpm_event: 错误:mpm_event模块已启用-由于冲突无法继续。它首先需要被禁用! 考虑mpm_prefork的冲突mpm_worker: 无法为php7.2启用依赖mpm_prefork,终止

所以我决定通过运行以下命令禁用mpm:

sudo a2dismod mpm_prefork
sudo a2dismod mpm_worker
sudo a2dismod mpm_event

然后重启apache:

Systemctl restart apache2

然后启用php7.2(我安装的版本):

Sudo a2enmod php7.2

现在一切都很好。

在我的情况下,php模块没有加载。试试这个:

检查加载了哪些模块:apache2ctl -M。查找类似php7_module (shared)的模块 如果没有列出php模块,则尝试加载与您的php版本对应的模块。在我的例子中,php包是libapache2-mod-php7.3。所以我这样做了:a2enmod php7.3,问题就解决了。

我发现了另一个导致这个问题的问题,并且已经解决了它。我不小心将脚本保存为UTF-16编码。PHP5似乎不能识别<?PHP标签默认为16位编码。

在我的ubuntu 14.04, apache 2.4, php 5.5.9安装,我尝试在/var/www/html(默认文档根)上使用sample.php,它工作正常。 所以问题出在我的虚拟服务器配置上。 解决方案是在包含.php的Directory def中包含这一行:

    php_admin_flag engine on

注意,对于PHP 7用户,添加到你的httpd.conf文件:

# PHP 7 specific configuration
<IfModule php7_module>
    AddType application/x-httpd-php .php
    AddType application/x-httpd-php-source .phps
    <IfModule dir_module>
        DirectoryIndex index.html index.php
    </IfModule>
</IfModule>