2014-04-14 28 views
0

我在解析HTML文件中的PHP時遇到問題。在.HTML文件中解析PHP時遇到問題

我正在使用Vesta的安裝和域運行良好。有問題的網站有

AddType application/x-httpd-php4 .htm .html 
# and 
AddType application/x-httpd-php5 .htm .html 
,這之前我搬到服務器它允許PHP在HTML運行

。我也試過了我在堆棧溢出中找到的每一個變體,並且他們都沒有工作。

我不知道爲什麼它現在不工作?

有沒有人有任何想法? 謝謝 丹·威廉斯

+3

也許是因爲你在'apache配置中設置了'AllowOverride None',並且你的.htaccess根本沒有被解析? –

+0

感謝您的回覆DKasipovic,我會稍微看看。我認爲這可能是因爲它找到了404頁面......謝謝 – user1688928

+2

我還建議另一種解決方案,只是找到一種鏈接到PHP文件的方式。 Html文件不會因爲某種原因而優於PHP;) – Martijn

回答

0

因爲你的服務器不會讓你在HTML使用PHP,只是重寫所有的.html請求在到PHP:

RewriteEngine On 
RewriteRule ^(.*)\.html$ $1.php [L] 

應該解決的問題。 (https://stackoverflow.com/a/5990276/2119863

爲什麼不用PHP解析HTML?

服務器需要通過php解釋器推送的文件類型越多,它將消耗更多的內存,處理器和電力。這就像汽車和卡車。出於某種原因,汽車不會拖拉大型拖車 - 卡車具有更大的發動機並承受重量,但留下更大的碳足跡。

第二個原因是功能分離。看到一個html文件,你應該100%確信 - 在所有和任何服務器上 - 這個文件不會print_r($_SERVER);。當看到一個php文件時,你應該確信它會執行一些動態操作。就像你不應該指望一位護士建造房屋一樣,你也不應該期待HTML解析PHP。 :)

+0

感謝您的建議,不幸的是,這會拋出404錯誤,指出index.php不存在。如果它是我的網站,我會將所有頁面更改爲PHP,但它不是 - 我只是託管它:( – user1688928