我试图在一个项目上执行一些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文件。

其他回答

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

    php_admin_flag engine on

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

我在Ubuntu上运行Apache,我的问题是/etc/apache2/mods-available/php5.conf文件缺少这个:

<FilesMatch ".+\.ph(p[345]?|t|tml)$">
    SetHandler application/x-httpd-php
</FilesMatch>

我把它添加回来,php正确地解析php文件。

我认为问题是,它显示的代码而不是结果是,它不会去本地主机。重新检查你要去的地址。是到本地文件目录还是到本地主机。

从你发送的屏幕截图,它将到你的计算机,而不是到本地主机。

"file:/// "应该是"localhost/"

如果你有这样的配置:

<VirtualHost *:80>
    ServerName example.com
    DocumentRoot "/var/www/example.com"

    <FilesMatch "\.php$">
        SetHandler "proxy:fcgi://127.0.0.1:9000"
    </FilesMatch>
</VirtualHost>

取消httpd.conf中的下几行注释

LoadModule proxy_module lib/httpd/modules/mod_proxy.so
LoadModule proxy_fcgi_module lib/httpd/modules/mod_proxy_fcgi.so

这对我很有用