Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/299.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP文件赢得';t在浏览器中打开-仅下载。我需要更改什么才能使其正常工作?_Php_Ubuntu_Apache2_Httpd.conf - Fatal编程技术网

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

PHP文件赢得';t在浏览器中打开-仅下载。我需要更改什么才能使其正常工作?,php,ubuntu,apache2,httpd.conf,Php,Ubuntu,Apache2,Httpd.conf,我已尝试重新安装PHP。PHP正在工作,Apache2正在运行。我不知道为什么它不能在浏览器中打开并正常显示 正如您所知,我的httpd.conf是空的,而我的所有内容都在apache2.conf中。这是因为我使用的是Ubuntu 你能帮我吗?我知道这很简单,但我似乎找不到答案。在您的apache配置中: <FilesMatch \.php$> SetHandler application/x-httpd-php </FilesMatch> SetHandle

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

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

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

在您的apache配置中:

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

SetHandler应用程序/x-httpd-php

之后不要忘记重新启动apache。让我知道进展如何。

您在这个项目上有虚拟主机吗

您是使用或直接像这样打开php文件的吗file://...../file.php ?试试看

sudo a2enmod php5
在候机楼。
假设您使用的是PHP5:)

我最近遇到了这个问题,但只有在访问我的站点根目录时(例如
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
”)


也许这会帮助像我一样挠头的其他人。

也有同样的问题,那是在我从live server意外下载的.htaccess文件中。删除.htaccess文件后,需要清除缓存,以便能够通过http://

在浏览器中加载.php文件。此外,在移动站点时,如果遇到这种情况,请确保.htaccess文件没有为php指定其他方法处理程序。我们在为客户端移动wordpress站点时遇到了这种情况。

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

SetHandler应用程序/x-httpd-php
SetHandler应用程序/x-httpd-php-source
#要在用户目录中重新启用php,请注释以下行
#(从到)不要将其设置为打开,因为
#防止.htaccess文件禁用它。
php_管理_值引擎关闭

解决方案在配置文件中,只需注释从

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

sudo apt-get install libapache2-mod-php5
然后


这个问题你可能会得到更好的答案。是的!我完全忘记了我需要通过localhost打开!谢谢。安装过程中会自动处理。是的。应该是。但既然这家伙有问题,很明显事情并没有像预期的那样进行。当你这样说的时候,它是有道理的:)别介意我的评论。似乎你在最后一行遗漏了什么?哦,是的,谢谢。我没有将括号中的术语标记为代码。我也有同样的问题。。但是我找不到/etc/apache2/mods enabled/php5.conf文件请帮助我..Hello@newbie这取决于您使用的发行版,
mod_userdir
的配置位于哪里。也许这是文件
httpd.conf
的一部分,该文件通常位于
/etc/apache2/
或(RedHat)
/etc/httpd/
中。如果你把
/etc/
-目录上网,也许你会找到它。我知道这是一个老问题,但我有上面列出的同样的问题,你的建议就是解决这个问题的方法。想不到。
sudo a2enmod php5