我试图在一个项目上执行一些PHP代码(使用Dreamweaver),但代码没有运行。
当我检查源代码时,PHP代码显示为HTML标记(我可以在源代码中看到它)。Apache运行正常(我正在使用XAMPP), PHP页面正在正常打开,但PHP代码没有被执行。
有人有什么建议吗?
注意:该文件已经命名为filename.php
编辑: 代码. .:
<?
include_once("/code/configs.php");
?>
我试图在一个项目上执行一些PHP代码(使用Dreamweaver),但代码没有运行。
当我检查源代码时,PHP代码显示为HTML标记(我可以在源代码中看到它)。Apache运行正常(我正在使用XAMPP), PHP页面正在正常打开,但PHP代码没有被执行。
有人有什么建议吗?
注意:该文件已经命名为filename.php
编辑: 代码. .:
<?
include_once("/code/configs.php");
?>
当前回答
在我的情况下,php模块没有加载。试试这个:
检查加载了哪些模块:apache2ctl -M。查找类似php7_module (shared)的模块 如果没有列出php模块,则尝试加载与您的php版本对应的模块。在我的例子中,php包是libapache2-mod-php7.3。所以我这样做了:a2enmod php7.3,问题就解决了。
其他回答
我也遇到过类似的问题,但我的解决方法不同。 存放PHP代码的文件名为somename。html 把它改为" someename .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
这对我很有用
今天,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中给出
刚刚花了几个小时试图让PHP 5与Windows 10上的Apache 2.4一起运行。最后对我来说,这是httpd.conf LoadModule中的一个拼写错误。通过denny2018这个apachelounge线程的最后一个回答,提请注意写作和准确的模块路径。谢谢你!
过了两晚,我发现……我的目录是c:(小写)
我有LoadModule php5_module“c:/php/php5apache2.dll”,但正确的apache 2.4是:
LoadModule php5_module "C:/php/php5apache2_4.dll"
所以我之前也错过了_4(对于apache 2.4)。对我有用的完整片段:
# PHP
LoadModule php5_module "C:/php/php5apache2_4.dll"
AddHandler application/x-httpd-php .php
<FilesMatch \.php$>
SetHandler application/x-httpd-php
</FilesMatch>
刚试过PHP 7。在Apache 2.4的httpd.conf中读取LoadModule行
LoadModule php7_module "C:/php/php7apache2_4.dll"
目前php手册显示c:/php/php5apache2.dll,当然需要调整。
我在Ubuntu上运行Apache,我的问题是/etc/apache2/mods-available/php5.conf文件缺少这个:
<FilesMatch ".+\.ph(p[345]?|t|tml)$">
SetHandler application/x-httpd-php
</FilesMatch>
我把它添加回来,php正确地解析php文件。