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

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

有人有什么建议吗?

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

编辑: 代码. .:

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


当前回答

如果你有这样的配置:

<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

这对我很有用

其他回答

这种情况又发生在我身上,服务器下载html文件,而不是处理。我已经有一段时间没有在电脑上使用web服务器apache了,同时Ubuntu从最初安装的LTS更新了两个版本。现在是这样

$ cat /etc/issue
Ubuntu 16.04 LTS

php是这样工作的:

$ sudo apt-get install lamp-server^
$ sudo a2enmod php7.0
$ sudo service apache2 restart 

web服务器现在正在解析php。也许现在要更新一些网页,因为php7.0现在运行在php5之前的地方。哦。

我有一个案例,我不小心开始解压我的文件目录在根。它从我的文件文件夹中添加了。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文件。

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

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

我在High Sierra (OS X 10.13.5)附带的php 7.1上遇到了这个问题,编辑/etc/apache2/httpd.conf进行以下更改有帮助:

取消注释这行 LoadModule php7_module libexec/apache2/libphp7.so 将下面的粘贴到末尾 < IfModule php7_module > AddType application/x-httpd-php .php AddType application/x-httpd-php-source .php < IfModule dir_module > DirectoryIndex index.html index.php < / IfModule > < / IfModule >

今天,PHP自带一个内置的web服务器,所以不需要进一步的安装,因此呈现PHP文件用于开发使用的最简单的方法之一是:

打开一个终端,切换到包含web应用程序的源目录(它的主文件通常称为index.php)。 在这个目录中,键入php -S localhost:7777(端口号是任意选择的)。 打开web浏览器,在地址栏中输入localhost:7777,就会呈现所需的网页。

如果您已经完成了访问,那么返回您的终端并按CTRL-C关闭开发服务器。

这个信息也是通过在终端中调用php——help来给出的,进一步的信息在https://www.php.net/manual/en/features.commandline.webserver.php中给出