2012年6月24日星期日

隱藏 Apache PHP 的副檔名

不少網頁伺服器時都會將副檔名隱藏,減省了在瀏覽器的超連結長度及隱藏伺服器類型

最簡單的方法
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php
將伺服器的所有以 .php 為副檔名的檔案一律在瀏覽器中不需加上 .php 的副檔名

但值得留意的是
當執行 RewriteEngine on 時,需要啟用 mod_rewrite.so
而在預設情況下 mod_rewrite.so 被關閉
在關閉 mod_rewrite.so 的情況下執行 RewriteEngine on 會發生 500 Internal Server Error

在 httpd.conf 中尋找此模組,並將前置的 # 刪除
若找不到則自行輸入
LoadModule rewrite_module modules/mod_rewrite.so

注意 mod_rewrite.so 的位置不一定在 modules/mod_rewrite.so
請尋找模組位置

沒有留言 :

發佈留言