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

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

有人有什么建议吗?

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

编辑: 代码. .:

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


当前回答

我在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 >

其他回答

听起来你的配置好像有问题,下面是一些你可以检查的东西:

Make sure that PHP is installed and running correctly. This may sound silly, but you never know. An easy way to check is to run php -v from a command line and see if returns version information or any errors. Make sure that the PHP module is listed and uncommented inside of your Apache's httpd.conf This should be something like LoadModule php5_module "c:/php/php5apache2_2.dll" in the file. Search for LoadModule php, and make sure that there is no comment (;) in front of it. Make sure that Apache's httpd.conf file has the PHP MIME type in it. This should be something like AddType application/x-httpd-php .php. This tells Apache to run .php files as PHP. Search for AddType, and then make sure there is an entry for PHP, and that it is uncommented. Make sure your file has the .php extension on it, or whichever extension specified in the MIME definition in point #3, otherwise it will not be executed as PHP. Make sure you are not using short tags in the PHP file (<?), these are not enabled on all servers by default and their use is discouraged. Use <?php instead (or enable short tags in your php.ini with short_open_tag=On if you have code that relies on them). Make sure you are accessing your file over your webserver using an URL like http://localhost/file.php not via local file access file://localhost/www/file.php

最后,查看PHP手册以获得更多的设置技巧。

如果我们在同一页做下面

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

现在一切都很好。

我知道这听起来很傻……但这种情况很少发生。

检查您是否试图从

**http://localhost/info.php**

而不是来自

file:///var/www/info.php

Ps >你可以注意到如果你从shell写

php info.php 

它回答的代码(它意味着PHP函数)..

我在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 >

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