我试图在一个项目上执行一些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
在应该执行的代码之前。<?之间不能有空格这里是PHP。
其他回答
PHP 8, Centos 7, Apache 2, Remi Repo
我最近升级了centos服务器以使用php 8。
升级后,php已经停止工作,apache开始为我提供php代码作为文本。
在花了很长时间寻找哪个配置设置没有更新之后,我找到了这个:
在/etc/httpd/conf.d
<IfModule mod_php7.c>
需要更改为:
<IfModule mod_php.c>
还有其他地方,你可能会看到mod_php7检查,可能会更新到mod_php变体,但这一个肯定为我修复了它。
之后不要忘记重新启动服务器。
php7:
sudo a2enmod proxy_fcgi setenvif
sudo a2enconf php7.0-fpm
sudo service apache2 restart
刚刚花了几个小时试图让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,当然需要调整。
如果你有这样的配置:
<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
这对我很有用
php7.3。你可以尝试安装这些模块。这对我很管用。
sudo apt-get install libapache2-mod-php7.3
sudo service apache2 restart