Apache的Mod_Rewrite對URL進行重寫,實現(xiàn)網(wǎng)站偽靜態(tài)化。
配置步驟:
第一步:找到apache的配置文件httpd.conf(文件在conf目錄下)
第二步:你首先必須得讓服務器支持mod_rewrite,如果你使用的是虛擬主機,請事先詢問你的主機提供商。
打開httpd.conf,找到
#LoadModule rewrite_module modules/mod_rewrite.so
把#去掉
找到AllowOverride None改成AllowOverride All,
注:AllowOverride 的參數(shù)設(shè)置為ALL,表示整臺服務器上都支持URL規(guī)則重寫。Apache 服務器要讀每個網(wǎng)站下目錄下的 .htaccess 文件。如果沒有這個文件,或者這個文檔沒有定義任何關(guān)于URL重寫的規(guī)則就不會有任何效果。
對于不同的網(wǎng)址,需要在APACHE中增加如下內(nèi)容
/*引號里代表你的web存放目錄*/
/*如果是Linux,只要你定位到你網(wǎng)站目錄即可*/
Options FollowSymLinks
AllowOverride None
第三步:重啟apache服務器,先按stop再start。
第四步:在你需要URL重寫的網(wǎng)站目錄下放一個.htaccess文件,文件名是.htaccess,Windiws下不能直接建立,你可以用記事本另存為。
注:我測試的時候在每個需要偽靜態(tài)的目錄下都存放了對應的.htaccess文件,同時在httpd.conf文件中像第二步那樣對相關(guān)的目錄添加了相應的
第五步:在.htaccess中通過正則表達式映射需要偽靜態(tài)的頁面。
URL正則表達式如下:
RewriteEngine on
RewriteRule index.html index.php
RewriteRule (d+).html$ info.php?infoid=$1
注:URL規(guī)劃的方案例子:
www.webtiro.com/info/info.php?infoid=100
映射為
www.webtiro.com/info/100.html
配置結(jié)束。
關(guān)于在Linux下基本上沒啥變動,我只修改了相關(guān)目錄地址,運行正常。
以上就是我關(guān)于利用Apache的mod_rewrite對URL重寫的具體操作步驟,從而實現(xiàn)了網(wǎng)站URL偽靜態(tài)化。