弹窗页面PHP代码不执行,PHP代码没有被执行,而是代码显示在页面上

听起来你的configuration有问题,这里有几件事你可以检查:

确保PHP已经安装并正确运行。 这可能听起来很愚蠢,但你永远不知道。 一个简单的方法来检查是从命令行运行php -v ,看看是否返回版本信息或任何错误。

确保PHP模块在Apache的httpd.conf 文件中被列出和取消注释 。这应该与文件中的LoadModule php5_module "c:/php/php5apache2_2.dll"类似。 searchLoadModule php ,并确保它前面没有注释( ; )。

确保Apache的httpd.conf文件具有PHP MIMEtypes。 这应该是像AddType application/x-httpd-php .php 。 这告诉Apache以PHP运行.php文件。 searchAddType,然后确保有一个用于PHP的条目, 并且取消注释 。

确保你的文件具有.php扩展名,或者在#3的MIME定义中指定的任何扩展名,否则它将不会被执行为PHP。

确保你没有在PHP文件中使用短标签 ( ),默认情况下这些标签在所有的服务器上都没有启用,并且不鼓励使用它们。 使用<?php代替 (或者在你的php.ini中使用short_open_tag=On来启用短标签,如果你有代码依赖于它们的话)。

确保你通过你的networking服务器访问你的文件,使用像http://localhost/file.php这样的URL,而不是通过本地文件访问file://localhost/www/file.php

最后检查PHP手册以获取更多设置提示 。

我在Ubuntu上运行Apache,我的问题是/etc/apache2/mods-available/php5.conf文件丢失了:

SetHandler application/x-httpd-php

我加了回来,PHP正确parsingPHP文件。

我发现了另一个问题导致这个问题,并已经解决了。 我不小心将脚本保存为UTF-16编码。 看来,PHP5默认情况下不能识别16位编码的<?php标签 。

我发布这个答案是因为我的Virtualmin / Webminpipe理界面决定禁用我的PHP引擎是一个好主意..花了一段时间find解决scheme,所以我想我会分享给你们:

此外,一定要检查你的网站configuration文件没有关系到这个特定的主机或虚拟主机有任何php_admin_value的closuresPHP,像这样:

php_admin_value engine Off

如有疑问,请发表评论…

# php_admin_value engine Off

并重新启动您的networking服务器

注意php 7用户,把它添加到你的httpd.conf文件中:

# PHP 7 specific configuration AddType application/x-httpd-php .php AddType application/x-httpd-php-source .phps DirectoryIndex index.html index.php

天啊! 我刚刚看到你的张贴图像,你只是打开你的PHP文件到浏览器。 你已经打开使用本地主机的URL。 如果你直接从你的目录中打开一个文件,那么在任何情况下都不会执行php代码。

使用: http://locahost/index.php或http:127.0.0.1/index.php

在你的情况下启用PHP短代码,你正在使用 这是PHP的短代码<?php

默认情况下,PHP短代码被禁用。

也可以使用: sudo apt-get install php5 libapache2-mod-php5 php5-mcrypt如果你是一个Ubuntu用户。

php7:

sudo a2enmod proxy_fcgi setenvif sudo a2enconf php7.0-fpm sudo service apache2 restart

我知道这听起来很愚蠢,但很less发生。

检查你是否试图执行PHP从

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

而不是从

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

ps>你可以注意到,如果你从shell写入

php info.php

它与代码的答案(这意味着PHP的function)..

我已经通过卸载XAMPP和安装WAMP来解决这个问题。 谢谢您的帮助。

我有类似的问题,但在我的情况下解决scheme是不同的。 我的文件,持有PHP代码被称为“somename.html”更改为“somename.php”工作正常

检查你已经安装了所有使用PHP的软件包:yum list installed | grep remi

安装所有相关的PHP软件包,尤其是php-devel。

在我的Ubuntu 14.04,apache 2.4,php 5.5.9安装,我尝试了/ var / www / html(默认文档根)上的sample.php,它工作正常。 所以问题出在我的虚拟服务器configuration上。 解决方法是在包含.php的Directory def上包含这一行:

php_admin_flag engine on

这只是发生在我身上,随着服务器下载HTML文件,而不是处理。 我没有在电脑上使用networking服务器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

networking服务器现在parsingphp。 也许现在需要更新一些网站,因为现在运行php7.0运行php5之前。 好吧。

我认为它显示代码而不是结果的问题是它不会去本地主机。 重新检查你进入的地址。你是去本地文件目录还是去本地主机。

从截图你发送它是要你的电脑不到本地主机。

“file:///”应该是“localhost /”

重新安装mcrypt模块为我工作。

$sudo apt-get install php5-mcrypt $sudo php5enmod mcrypt

我有一个情况,我不小心开始在根目录下解压我的文件目录。 它从我的文件夹添加了.htaccess文件,将阻止所有的PHP

# If we know how to do it safely, disable the PHP engine entirely. php_flag engine off

底线检查根上的.htaccess文件。

这是在我的.htaccess

DirectoryIndex index.html index.htm

index.html包含PHP代码。 默认情况下,PHP不会像PHP代码那样处理扩展名为htm *的文件。

您可以通过将以下内容添加到.htaccess中来覆盖此内容:

SetHandler application/x-httpd-php

对于运行php 7的LAMP的全新设置,请编辑/etc/httpd/conf/httpd.conf文件注意:在更改任何内容之前,请确保对其进行备份。

将其粘贴在文件的最底部:

AddType application/x-httpd-php .php AddType application/x-httpd-php-source .phps DirectoryIndex index.html index.php

然后,searchLoadModule并粘贴以下行:

LoadModule php7_module modules/libphp7.so

这一行将简单地要求httpd加载php 7模块

然后重新启动httpd

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值