Php
將 .html 解析為 PHP:如何檢查哪種方法是正確的?
將文件解析
.html
為 PHP 的常用方法是將以下行的第一行(PHP 作為 Apache 模組)或兩者(PHP 作為 CGI)添加到.htaccess
文件中:AddType application/x-httpd-php .html .htm AddHandler application/x-httpd-php .html .htm
有時需要
x-http-php5
,具體取決於主機:AddType application/x-httpd-php5 .html .htm AddHandler application/x-httpd-php5 .html .htm
但是,我現在在一個新主機上,並且沒有滲透這些線路。在所有情況下,原始文件都被發送到瀏覽器,並
wget
顯示它x-httpd-php
是以 Content-Type 呈現的!HTTP request sent, awaiting response... HTTP/1.1 200 OK Date: Tue, 07 Aug 2012 14:16:40 GMT Server: Apache Last-Modified: Tue, 07 Aug 2012 07:46:44 GMT ETag: "862239-14-4c6a83216c100" Accept-Ranges: bytes Content-Length: 20 X-Powered-By: PleskLin Keep-Alive: timeout=15, max=100 Connection: Keep-Alive Content-Type: application/x-httpd-php Length: 20 [application/x-httpd-php] Remote file exists.
請注意,這
Length: 20
正是 的長度<?php phpinfo(); ?>
,這就是它所服務的內容。我已經確認 PHP 作為一個模組執行,在這個 SO answer 中有很棒的提示。我已經與伺服器的維護人員(一位同事,所以即使我切換主機我仍然想幫助他解決問題)談過,他不知道問題或正確的配置是什麼。伺服器在基於 Debian 的發行版上執行 Plesk,如果這很重要的話。
這實際上是一個 Apache 配置問題,這個頁面有解決方案:http: //kb.parallels.com/en/124
在這裡轉載以供後代使用:
.htaccess 文件可以通過將以下內容放在“/etc/httpd/conf.d/zz010_psa_httpd.conf”文件中來啟用:
AccessFileName .htaccess <Directory "/var/www/vhosts"> Options +All AllowOverride All Order allow,deny Allow from all </Directory>
然後重啟 Apache:
#service httpd stop #service httpd start