我尝试重新安装PHP。 PHP正在运行,Apache2正在运行。我不知道为什么它不能在浏览器中打开并正常显示。
您知道 - 我的httpd.conf是空的 - 而我在apache2.conf中拥有所有内容。这是因为我正在使用Ubuntu。
你能帮帮我吗?我知道这很简单,但我似乎无法找到答案。答案 0 :(得分:8)
你有这个项目的虚拟主持人吗?
您是使用http://localhost/file.php打开php文件还是直接打开文件://..... / file.php?
答案 1 :(得分:5)
就我而言,模块userdir修改了/etc/apache2/mods-enabled/php5.conf
<IfModule mod_php5.c>
<FilesMatch "\.ph(p3?|tml)$">
SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "\.phps$">
SetHandler application/x-httpd-php-source
</FilesMatch>
# To re-enable php in user directories comment the following lines
# (from <IfModule ...> to </IfModule>.) Do NOT set it to On as it
# prevents .htaccess files from disabling it.
<IfModule mod_userdir.c>
<Directory /home/*/public_html>
php_admin_value engine Off
</Directory>
</IfModule>
</IfModule>
解决方案位于配置文件中,只需注释从<IfModule mod_userdir>
到</IfModule>
的行。
答案 2 :(得分:4)
在你的apache conf中:
<FilesMatch \.php$>
SetHandler application/x-httpd-php
</FilesMatch>
不要忘记之后重启apache。让我知道它是怎么回事。
答案 3 :(得分:2)
尝试
sudo a2enmod php5
在终端。 假设你使用的是php 5:)
答案 4 :(得分:2)
如果您使用的是php5,那么完整的解决方案就是
sudo apt-get install libapache2-mod-php5
然后
sudo a2enmod php5
答案 5 :(得分:1)
我最近遇到了这个问题,但只有在访问我网站的根目录时(例如http://example.com
) - 在明确访问index.php时才会按预期工作(例如http://example.com/index.php
)。
问题在于,在创建index.php
之前,我在网络根目录中有一个index.html
文件,但后来我将其重命名为index.html.bak
,以便将移出方式”。不幸的是,这并没有让它失控。无论出于何种原因,Apache将以MIME类型application/x-trash
提供该文件
(由于/etc/mime.types
文件包含一行“application/x-trash ~ % bak old sik
”)
也许这会帮助那些像我一样摸不着头脑的人。
答案 6 :(得分:1)
此外,在移动网站时遇到这种情况,请确保您的.htaccess文件没有为php指定不同的方法处理程序。我们遇到了这个为客户移动wordpress网站。
答案 7 :(得分:0)
有同样的问题 - 它是在.htaccess文件中我不小心从实时服务器下载的。删除.htaccess文件后,您需要清除缓存,以便能够通过http://
在浏览器中加载.php文件