x-httpd-php5s< - s!在Bluehost上

时间:2010-09-03 16:43:40

标签: php apache .htaccess handler

我正在尝试在测试服务器上复制网站。但是,在测试服务器上,.php文件不会被解释。我发现原因是文档根目录中的.htaccess文件。内容:

# Use PHP5 Single php.ini as default
AddHandler application/x-httpd-php5s .php
RewriteEngine On
#RewriteRule ^$ index.php [QSA]
RewriteRule ^(.*)$    /web/$1

如何配置Apache2 / PHP5以支持处理程序application/x-httpd-php5s?是否有任何软件包可以使这个处理程序可用?

更新:它可能是Bluehost.com特有的处理程序。我正在调查这个......

更新2:为了避免更改.htaccess文件,这会导致不一致,我向Apache添加了一个处理程序“application / x-httpd-php5s”:

AddHandler application/x-httpd-php5s .php
Action application/x-httpd-php5s /cgi-bin/php5

但是,该处理程序在生产服务器上的行为不会像生成服务器那样导致PHP解释器在文档根目录中使用php.ini并将其用于所有子目录。例如,一个有点丑陋的解决方法是将php.ini符号链接到测试服务器上的全局php.ini

3 个答案:

答案 0 :(得分:8)

我一直在使用Bluehost。 你所说的只是加载的php.ini文件。

AddHandler application / x-httpd-php5s .php

为该服务器上托管的所有网站加载一个php.ini文件。 php.ini文件通常位于public_html文件夹中。

如果您将其更改为;

AddHandler application / x-httpd-php5 .php

然后服务器将在与.htaccess文件相同的文件夹中查找php.ini。

5之后的“s”表示单身。

答案 1 :(得分:2)

AddHandler application / x-httpd-php5s是处理程序。

您所要做的就是将其更改为AddHandler application/x-httpd-php5 .php

答案 2 :(得分:0)

出于性能原因,我已经说服我的客户远离Bluehost。所以现在对我们来说这不是问题。但是,从我所看到的情况来看,我很确定x-httpd-php5s这是一个Bluehost特定的处理程序。