下面簡單解說下上面的意思:
【RewriteEngine On】表示重寫引擎開,關閉off,關閉的話當然就不能做轉發了。
【Rewritecond %{HTTP_HOST} ^(www/.)?silentash.com$ [nc]】
這是重寫條件,前面%{HTTP_HOST}表示當前訪問的網址,只是指前綴部分,格式是www.silentash.com不包括“http://”和“/”,^表示字符串開始,$表示字符串結尾,/.表示轉義的. ,如果不轉義也行,推薦轉義,防止有些服務器不支持,?表示前面括號www/.出現0次或1次,這句規則的意思就是如果訪問的網址是silentash.com或者www.silentash.com就執行以下的語句,不符合就跳過。
【Rewriterule ^(.*)$ http://VeVb.com/$1 [r=301,nc]】
這個根據之前的條件執行相應的規則,在這里的話就是讓重定向到VeVb.com域下面相應地址,比如來源地址是http://www.silentash.com/abc/1.html,前部分的^(.*)$將會匹配當前請求的url,不過這里到底是匹配整個http://www.silentash.com/abc/1.html,還是只匹配/abc/1.html即反斜杠后面的成分,還是只匹配abc/1.html?
答案是:根據RewriteBase規則規定,如果rewritebase 為/,將會匹配abc/1.html,默認應該是abc/1.html。后面的$1是正則匹配出來的值,經過組合,之前的url會被重定向為http://VeVb.com/abc/1.html,達到了域名轉換的目的。
后面幾行大同小異。
還有一個問題是,不能保證每個人輸入的網址都是小寫的,如果輸入大寫的呢,linux系統是區分大小寫的,所以應該在RewriteCond后添加[NC]忽略大小寫的。
下面附上簡單的語法規則和flags:
【RewriteCond語法:】
RewriteCond TestString CondPattern [flags]
rewritecond的其他用法:
‘-d'(目錄)
將TestString視為一個路徑名并測試它是否為一個存在的目錄。
‘-f'(常規文件)
將TestString視為一個路徑名并測試它是否為一個存在的常規文件。
‘-s'(非空的常規文件)
將TestString視為一個路徑名并測試它是否為一個存在的、尺寸大于0的常規文件。
‘-l'(符號連接)
將TestString視為一個路徑名并測試它是否為一個存在的符號連接。
‘-x'(可執行)
將TestString視為一個路徑名并測試它是否為一個存在的、具有可執行權限的文件。該權限由操作系統檢測。
‘-F'(對子請求存在的文件)
檢查TestString是否為一個有效的文件,而且可以在服務器當前的訪問控制配置下被訪問。它使用一個內部子請求來做檢查,由于會降低服務器的性能,所以請謹慎使用!
‘-U'(對子請求存在的URL)
檢查TestString是否為一個有效的URL,而且可以在服務器當前的訪問控制配置下被訪問。它使用一個內部子請求來做檢查,由于會降低服務器的性能,所以請謹慎使用!
【RewriteRule語法:】
RewriteRule Pattern Substitution [flags]
【flags】:
‘chain|C'(鏈接下一規則)
此標記使當前規則與下一個規則相鏈接。它產生這樣的效果:如果一個規則被匹配,則繼續處理其后繼規則,也就是這個標記不起作用;如果該規則不被匹配,則其后繼規則將被跳過。比如,在一個目錄級規則中執行一個外部重定向時,你可能需要刪除”.www”(此處不應該出現”.www”)。
‘cookie|CO=NAME:VAL:domain[:lifetime[:path]]'(設置cookie)
在客戶端設置一個cookie。cookie的名稱是NAME,值是VAL。domain是該cookie的域,比如'.apache.org',可選的lifetime是cookie的有效期(分鐘),可選的path是cookie的路徑。
‘env|E=VAR:VAL'(設置環境變量)
此標記將環境變量VAR的值為VAL,VAL可以包含可擴展的正則表達式反向引用($N和%N)。此標記可以多次使用以設置多個變量。這些變量可以在其后許多情況下被間接引用,通常是在XSSI(<!
主站蜘蛛池模板:
普定县|
宁阳县|
湘潭县|
赞皇县|
大余县|
阿坝|
大方县|
定南县|
九江市|
黄平县|
留坝县|
福贡县|
赤城县|
建瓯市|
包头市|
海宁市|
夹江县|
沾益县|
新晃|
腾冲县|
襄汾县|
河北区|
高平市|
家居|
喀喇|
两当县|
乌拉特中旗|
革吉县|
博野县|
堆龙德庆县|
莱芜市|
孝义市|
易门县|
钟山县|
绩溪县|
林甸县|
沙坪坝区|
义马市|
贵溪市|
两当县|
灵山县|