什么导致 PHP 页面持续下载而不是正常运行

Jon*_*Cox 6 ubuntu php php5 apache-2.2

我正在 VM 上运行 Ubuntu 服务器,以测试不同的网络论坛解决方案。我已经设置了一个 ~/public_html/ 可以通过 apache2 Web 服务器访问,并且工作正常。

但是,当我在浏览器上访问 .php 文件(使用我的 VM 的 ip-address/~username/phpfile.php)时,它不会按应有的方式显示它。相反,它提供保存到文件/询问用什么程序打开它。有趣的是,尽管该对话框确实识别出它是一个 php 文件。


我在系统上安装了以下版本的 php:

PHP 5.3.2-1ubuntu4.5 with Suhosin-Patch (cli) (built: Sep 17 2010 13:49:46)
Copyright (c) 1997-2009 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies
Run Code Online (Sandbox Code Playgroud)

以及以下服务器:

Server version: Apache/2.2.14 (Ubuntu)
Server built:   Nov 18 2010 21:19:09
Run Code Online (Sandbox Code Playgroud)


如果有人知道可能导致此/潜在解决方案的原因,那会让我非常高兴:)

编辑:原来文件这种行为只在 ~/public_html/ 目录中的文件上很明显。/var/www/ 中的所有 php 文件都可以正常工作。

谁能解释为什么有奖?:D(我所说的奖品只是说做得很好,恐怕没有实际奖品。)

Mar*_*son 6

您当前可能只安装了 PHP 的 cli 版本,请尝试

sudo apt-get install php5

并重新启动apache

sudo apache2ctl restart.

您还可以通过执行以下操作检查 PHP 模块是否已加载到 apache 中

sudo apache2ctl -M

如果加载了模块,那么它应该显示类似

Loaded Modules:
 ...
 php5_module (shared)
 ...
Syntax OK
Run Code Online (Sandbox Code Playgroud)


pow*_*tac 5

将此添加到您的 apache 配置中

AddType application/x-httpd-php .php 
Run Code Online (Sandbox Code Playgroud)

  • 哇..这对我有用。我正在使用 Zend Apache 服务器(CGI/FastCGI)并且我经常遇到此错误,直到我在 httpd.conf 文件中进行了您提到的更改。非常感谢。 (2认同)