我试图在一个项目上执行一些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");
?>
当前回答
这是我的。htaccess
DirectoryIndex index.html index.htm
index.html包含PHP代码。默认情况下,PHP不会将扩展名为htm*的文件作为PHP代码处理。
你可以通过在.htaccess中添加以下内容来覆盖它:
<FilesMatch ".+\.html$">
SetHandler application/x-httpd-php
</FilesMatch>
其他回答
你只是把php文件打开到浏览器。你必须使用localhost url打开它。如果您直接从目录中打开一个文件,在任何情况下它都不会执行PHP代码。
使用:http://locahost/index.php或http:127.0.0.1/index.php
启用php短代码。在本例中,您使用<?这是<? PHP的PHP短代码。默认情况下,php短代码是禁用的。
如果你是ubuntu用户,也可以使用:sudo apt-get install php5 libapache2-mod-php5 php5-mcrypt。
注意,对于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>
在我的情况下(Apache/2.4.34),
在取消特定模块的注释之后
其它选项:
from
“/etc/apache2/httpd.conf”
我的问题消失了。
尝试重新启动apache服务器。这就是我犯的错误——在安装php后忘记重新启动服务器!
service httpd restart
如果我们在同一页做下面
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
现在一切都很好。