2012-02-20 63 views
3

不能爲我的生活工作爲什麼這是行不通的 - 在Dreamhost服務器上,我創建了一個htaccess文件,並添加了AddHandler php5-cgi .html .htm允許PHP在HTML文件,按照Dreamhost文檔。在一個相同的dreamhost軟件包中,我爲另一個站點完成了相同的工作,並且工作完美,但在這種情況下,它不會解析php!有什麼我可能錯過了這可能導致問題? htaccess在web根目錄下,並沒有被其他任何東西覆蓋。htaccess規則解析PHP在HTML文件不工作

回答

4

是您的服務器使用suPHP而不是mod_php的或純PHP,CGI?

使用

AddHandler x-httpd-php .html .htm 

AddType application/x-httpd-php .html .htm 

,而不是嘗試。

Postscript

共享主機服務使用基於UID的相互分離的個人帳戶。大多數使用suPHP,但有些使用suEXEC。他們將使用其中之一。兩者都充當php-cgi的su包裝,因此您無法從phpinfo()中將它作爲其PHP腳本引擎進行分析,因爲這將在兩種情況下報告Server APICGI/FastCGI。對於CGI啓動的腳本,phpinfo不報告Apache配置。您需要用一下你的託管服務提供商的常見問題,或可能嘗試:

<?php 
header("Content-Type: text/plain"); 
echo system('grep -iR LoadModule /etc/httpd /etc/apache2'); 

的託管服務提供商的支持論壇/ FAQ可以在這裏給出具體的配置建議。你有嘗試過嗎?

+0

嗨,它的運行爲CGI。無論如何,我已經嘗試過您提到的那些選項,只是爲了排除它們。如果我運行phpinfo(),服務器API是CGI。 – bsod99 2012-02-20 23:23:33

+0

對不起,但由於我上面PS的原因,這個結論可能是錯誤的。 – TerryE 2012-02-21 01:59:46

+0

我剛剛檢查了Dreamhost wiki。它使用suEXEC \([here](http://wiki.dreamhost.com/index。php/Suexec)\),但傳遞它現在使用FastCGI \([here](http://wiki.dreamhost.com/PHP_FastCGI)\)的意見。您需要設置FastCGI。這是一個解決http://discussion.dreamhost.com/ – TerryE 2012-02-21 02:22:11

8

嘗試,如果Apache是​​選擇PHP作爲一個模塊這

​​

以上設置將起作用。

AddHandler application/x-httpd-php .html .htm 

AddHandler application/x-httpd-php5 .html .htm 

如果Apache正在執行PHP作爲CGI上述將工作?

有沒有什麼傷害我會說把上述兩個條件放在一起,但嘗試一個比其他,看看它是否適合你。

更多here

1

我有和你一樣的問題,但我只是把這AddType php .html .htm我的.htaccess,它的工作。

0

對於我來說,工作僅僅是這樣的:

AddHandler php-cgi .php .htm