4

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

正如你所知——我的 httpd.conf 是空的——相反,我在 apache2.conf 中拥有一切。这是因为我使用的是 Ubuntu。

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

4

8 回答 8

8

你有这个项目的虚拟主机吗?

你是用http://localhost/file.php还是直接像 file://...../file.php 打开 php 文件?

于 2011-03-22T20:37:08.320 回答
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>to的行</IfModule>

于 2012-01-29T13:57:01.153 回答
4

在你的 apache conf 中:

<FilesMatch \.php$>
    SetHandler application/x-httpd-php
</FilesMatch>

之后不要忘记重新启动apache。让我知道事情的后续。

于 2011-03-22T20:36:00.843 回答
2

尝试

sudo a2enmod php5

在终端。假设您使用的是 php 5 :)

于 2011-03-22T20:48:06.283 回答
2

如果您使用的是 php5,那么完整的解决方案将是

sudo apt-get install libapache2-mod-php5

然后

sudo a2enmod php5
于 2014-09-30T12:54:23.927 回答
1

我最近遇到了这个问题,但仅在访问我的站点的根目录时(例如http://example.com) - 它在显式访问 index.php 时按预期工作(例如http://example.com/index.php)。

问题是,在创建之前index.php,我在 web 根目录中有一个index.html文件,但后来我将其重命名index.html.bak为“将其移开”。不幸的是,这并没有把它移开。无论出于何种原因,Apache 都会使用 MIME 类型的application/x-trash.
(因为/etc/mime.types文件包含一行读取“ application/x-trash ~ % bak old sik”)

也许这会帮助那些像我一样摸不着头脑的人。

于 2011-08-10T16:45:33.187 回答
1

此外,在移动站点时遇到这种情况,请确保您的 .htaccess 文件没有为 php 指定不同的方法处理程序。我们遇到了这个为客户移动 wordpress 网站的问题。

于 2011-12-14T21:04:29.707 回答
0

有同样的问题 - 它在我不小心从实时服务器下载的 .htaccess 文件中。删除 .htaccess 文件后,您需要清除缓存才能通过 http:// 在浏览器中加载 .php 文件

于 2011-09-20T02:18:42.150 回答