PHP文件无法在浏览器中打开 - 仅下载。我需要更改什么才能使其正常工作?

时间:2011-03-22 20:31:09

标签: php ubuntu apache2 httpd.conf

我尝试重新安装PHP。 PHP正在运行,Apache2正在运行。我不知道为什么它不能在浏览器中打开并正常显示。

您知道 - 我的httpd.conf是空的 - 而我在apache2.conf中拥有所有内容。这是因为我正在使用Ubuntu。

你能帮帮我吗?我知道这很简单,但我似乎无法找到答案。

8 个答案:

答案 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文件