PHP 文件不会在浏览器中打开 - 只能下载。我需要进行哪些更改才能使其正常工作?

Posted

技术标签:

【中文标题】PHP 文件不会在浏览器中打开 - 只能下载。我需要进行哪些更改才能使其正常工作?【英文标题】:PHP Files won't open in browser - only download. What do I need to change to make it work properly? 【发布时间】:2011-07-20 19:51:40 【问题描述】:

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

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

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

【问题讨论】:

对于这个问题,您可能会在serverfault.com 上得到更好的答案。 【参考方案1】:

如果您使用的是 php5,则完整的解决方案是

sudo apt-get install libapache2-mod-php5

然后

sudo a2enmod php5

【讨论】:

【参考方案2】:

在我的例子中,模块 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>

解决方案在配置文件中,只需将&lt;IfModule mod_userdir&gt;&lt;/IfModule&gt; 的行注释掉即可。

【讨论】:

您好像在最后一行遗漏了什么? 哦,是的,谢谢。我没有将括号中的术语标记为代码。 我也有同样的问题..但我找不到 /etc/apache2/mods-enabled/php5.conf 文件请帮助我.. 您好@newbie,这取决于您使用的发行版,mod_userdir 的配置所在的位置。也许这是文件httpd.conf 的一部分,该文件通常位于/etc/apache2/ 或(RedHat)/etc/httpd/。如果你 grep 你的/etc/-Directory,也许你会找到它。【参考方案3】:

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

【讨论】:

【参考方案4】:

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

在浏览器中加载 .php 文件

【讨论】:

【参考方案5】:

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

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

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

【讨论】:

我知道这是一个老问题,但我遇到了上面列出的相同问题,您的建议就是解决它的方法。没想到。【参考方案6】:

试试

sudo a2enmod php5

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

【讨论】:

【参考方案7】:

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

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

【讨论】:

是的!我完全忘记了我需要通过 localhost 打开!谢谢。【参考方案8】:

在你的 apache conf 中:

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

之后不要忘记重新启动 apache。告诉我进展如何。

【讨论】:

安装时会自动处理。 是的。它应该是。但是既然这家伙有问题,很明显事情并没有像预期的那样发展。 好吧,当你这样说是有道理的 :) 没关系我的评论。

以上是关于PHP 文件不会在浏览器中打开 - 只能下载。我需要进行哪些更改才能使其正常工作?的主要内容,如果未能解决你的问题,请参考以下文章

用phpstorm软件,写了简单的PHP代码,用浏览器打开怎么显示错误??如下图

浏览器文件只能从http网站下载

.net怎样在网页中打开pdf格式文件,不允许下载,只能在网页中浏览,求大神

用PHP实现浏览器点击下载TXT文档的方法详解

Laravel 5.5 项目下载文件而不是在浏览器中打开它们 PHP 7.1 MAC

ZipStream 在 PHP 中动态创建的 zip 文件不会在 OSX 中打开