僞靜態的目的是將PHP動態頁面轉變成html後綴的靜態頁面,事實上在服務器資源加載過程中,仍然是動態頁面,只是爲了讓頁面更加友好。具體僞靜態的意義,大家可以再百度百科中查找,這裏就不多贅述。百度百科地址直達:http://baike.baidu.com/link?url=hURboqMI6_sccF9mR-CcL1StE1bUt_ZSlzG_OdnUhEh7e35yVRjCusdEQm9u59TXz7Y5kzi-Q41GShHYjrXW7_
下面我們直講述在Apache下的PHP僞靜態配置方法:
1.檢測Apache是否支持mod_rewrite 通過php提供的phpinfo()函數查看環境配置,通過Ctrl+F查找到“Loaded Modules”,其中列出了所有apache2handler已經開啓的模塊,如果裏面包括“mod_rewrite”,則已經支持,不再需要繼續設置。
如果沒有開啓“mod_rewrite”,則打開目錄 您的apache安裝目錄“/apache/conf/” 下的 httpd.conf 文件,通過Ctrl+F查找到“LoadModule rewrite_module”,將前面的”#”號刪除即可。
如果沒有查找到,則到“LoadModule” 區域,在最後一行加入“LoadModule rewrite_module modules/mod_rewrite.so”(必選獨佔一行),然後重啓apache服務器即可。
2.建立.htaccess 文件
a.方法一:最好使用vim來建立這個文件,應爲這個文件是沒有文件名的,操作起來不太方便。
b.方法二:新建 htaccess.txt
用記事本 打開,點擊文件–另存爲,在文件名窗口輸入”.htaccess”,然後點擊保存。此文件得保存在網站的根目錄
3.讓apache服務器支持.htaccess
修改httpd.conf文件
Options FollowSymLinks
AllowOverride None
改爲
Options FollowSymLinks
AllowOverride All
4.填寫網站僞靜態規則 (需要 瞭解 正則表達式)
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule index.html$ index.php
RewriteRule index-([1-9]+[0-9]*).html$ index.php?p=$1//規則這邊之間的空格不能漏寫,不要寫錯,不然活報Internal
Server Error錯誤。
</IfModule>
在寫僞靜態規則時,應保留有價值的參數,不要將有價值的參數全部精簡掉。前面例子中的 index.php?p=$1 重寫爲 index-p.html,(p代表傳進去的數值)
5.輸入格式的樣子如下:
當我們輸入html的形式時,出現的和輸入正常php文件形式一樣的頁面
僅供大家參考,轉載請註明出處。