我需要將所有.html文件作爲.php文件運行,並且我沒有時間在明天的演示之前更改所有鏈接。有沒有辦法用我的Apache服務器「破解」這個?使用.htaccess將所有.html頁面作爲.php文件運行?
回答
你的網站的根目錄下創建一個.htaccess文件並添加以下行:
[Apache2的@ Ubuntu的/ Debian的:使用此指令]
AddType application/x-httpd-php .html .htm
或者,從以下評論:
AddType application/x-httpd-php5 .html .htm
如果您正在運行PHP,CGI(可能並非如此),則應該寫:
AddHandler application/x-httpd-php .html .htm
我不得不在該類型的末尾添加`5`來使其工作,即`AddType應用程序/ x-httpd-php5 .html .htm`(運行PHP 5.3的CentOS) – melat0nin 2014-04-09 09:17:45
在我的GoDaddy的服務器下面的代碼工作
Options +ExecCGI
AddType application/x-httpd-php .php .html
AddHandler x-httpd-php5 .php .html
我覺得這是對HTML和HTM網頁運行PHP腳本的最佳方式:
AddType application/x-httpd-php5 .html .htm
通常你應該添加:
Options +ExecCGI
AddType application/x-httpd-php .php .html
AddHandler x-httpd-php5 .php .html
Howeve r代表GoDaddy的共享主機(PHP-CGI),您還需要添加這些行:
AddHandler fcgid-script .html
FCGIWrapper /usr/local/cpanel/cgi-sys/php5 .html
使用@馬克 - 弗朗索瓦辦法火狐提示我下載HTML文件
最後爲我工作(同時使用)以下:
AddType application/x-httpd-php .htm .html AddHandler x-httpd-php .htm .html
您也可以使用H或T標誌的mod_rewrite強制所有。HTML文件由PHP處理程序解析:
使用H(處理器)標誌:
RewriteEngine on
RewriteRule \.(html|htm)$ - [H=application/x-httpd-php5]
使用T(類型)標誌:
RewriteEngine on
RewriteRule \.(html|htm)$ - [T=application/x-httpd-php5]
或者你也可以將規則添加更多的擴展由管道分離的模式|要由PHP處理程序解析
例如:
RewriteRule \.(html|htm|txt|foo)$ - [T=application/x-httpd-php5]
上面的例子將改變與的.html結尾的文件的MIME類型,的.htm,.TXT ,.foo to php。
注:在一些服務器上,你將不得不改變PHP5到PHP得到這個例子中處理字符串的工作:
更改它
[T=application/x-httpd-php5]
到
[T=application/x-httpd-php]
您需要將以下行添加到您的Apache配置文件中:
AddType application/x-httpd-php .htm .html
您還需要其他兩件事情:
允許Overridding
在
your_site.conf
文件(例如,在我的情況/etc/apache2/mods-available
)下,加上下面幾行:<Directory "<path_to_your_html_dir(in my case: /var/www/html)>"> AllowOverride All </Directory>
啓用重寫國防部
運行這個命令你的機器上:
sudo a2enmod rewrite
經過任何的這些步驟,你應該重新啓動apache:
sudo service apache2 restart
AddHandler application/x-httpd-php .php .html .htm
// or
AddType application/x-httpd-php .php .htm .html
- 1. 通過.htaccess將所有* .php頁面重定向到* .html
- 2. 需要做.htaccess文件顯示所有的頁面上的HTML
- 3. 的.htaccess - 除了主頁的所有頁面使用以下htaccess文件HTTPS
- 4. 將.jsp作爲.html文件運行
- 5. 使用.htacces將.ics文件作爲.php文件運行
- 6. 使用htaccess重定向所有頁面
- 7. 使用htaccess將所有部分頁面重定向到一頁
- 8. htaccess的重定向所有,但一個頁面的HTML到PHP
- 9. 的.htaccess重定向所有的.html頁面到PHP GET變量
- 10. .htaccess用php文件重寫wordpress頁面
- 11. 如何將所有* .html頁面重定向到* .php頁面?
- 12. 如何使用htaccess文件將文件夾的所有頁面重定向到某個頁面?
- 13. 需要使用htaccess將php頁面重定向到html嗎?
- 14. 使用PHP替換HTML頁面正文中的所有鏈接使用PHP
- 15. 將一個php頁面重定向到Apache的html頁面htaccess
- 16. htaccess和PHP文件 - 處理所有文件爲PHP?
- 17. 使用Inkscape Commnad行將PDF的所有頁面轉換爲多個PNG文件
- 18. 使用代理php將文本/ html頁面轉換爲XML
- 19. 如何使用htaccess將所有頁面重定向到404
- 20. 將XML文件轉換爲HTML頁面
- 21. 在HTML頁面中運行PHP
- 22. 在html頁面運行PHP腳本
- 23. 運行單個.html文件爲.php?
- 24. htaccess將所有頁面重定向到一個頁面
- 25. 使用htaccess的斗篷HTML頁面的文件夾
- 26. htaccess的重定向所有HTML文件
- 27. 如何將所有JS文件寫入一個HTML頁面?
- 28. Phing PHPUnit運行所有php文件
- 29. 禁用.php擴展名,但運行沒有.php的文件作爲php文件
- 30. 我的HTML頁面似乎沒有運行我的JavaScript文件
雖然這不是直接回答你的問題,但使用`sed`或任何好的IDE都可以讓你在整個目錄/項目中找到並替換。另外,您可以在Linux上輕鬆批量重命名文件。 – coreyward 2011-01-14 01:43:04
是的,但如果您使用sed重命名文件,您可能會收到許多斷開的鏈接。當然,您也可以嘗試更改您網站上的所有鏈接,但也有來自整個互聯網的可能指向您網站的鏈接。 – 2011-01-14 02:26:04