#
位于行首時(shí)表示注釋。
[F]
Forbidden(禁止): 命令服務(wù)器返回 403 Forbidden錯(cuò)誤給用戶瀏覽器
[L]
Last rule(最后一條規(guī)則): 告訴服務(wù)器在本條規(guī)則執(zhí)行完后停止重寫URL
[N]
Next(下一條規(guī)則): 告訴服務(wù)器繼續(xù)重寫,指導(dǎo)所有重寫指令都執(zhí)行過
[G]
Gone(丟失): 命令服務(wù)器返回410 GONE(no longer exists)錯(cuò)誤消息
[P]
Proxy(代理): 告訴服務(wù)器通過mod_proxy模塊處理用戶請(qǐng)求
[C]
Chain(捆綁): 告訴服務(wù)器將當(dāng)前的規(guī)則和前面的規(guī)則進(jìn)行捆綁
[R]
Redirect(重定向): 命令服務(wù)器發(fā)出重定向消息,以便用戶瀏覽器發(fā)出rewritten/modified(重寫/修改)URL的請(qǐng)求
[NC]
No Case(不區(qū)分大小寫): 對(duì)客戶端請(qǐng)求的URL不區(qū)分大小寫
[PT]
Pass Through(放行): 讓mod_rewrite模塊將重寫的URL傳回給Apache做進(jìn)一步處理
[OR]
Or(邏輯或): 用邏輯“或”將兩個(gè)表達(dá)式連接在一起,如果結(jié)果為“真”,則會(huì)應(yīng)用后繼的相關(guān)規(guī)則
[NE]
No Escape(禁用轉(zhuǎn)義): 命令服務(wù)器在輸出時(shí)禁用轉(zhuǎn)義字符
[NS]
No Subrequest(禁用子請(qǐng)求): 如果存在內(nèi)部子請(qǐng)求,則跳過當(dāng)前命令
[QSA]
Append Query String(追加查詢字符串): 命令服務(wù)器在URL末尾追加查詢字符串
[S=x]
Skip(跳過): 如果滿足某指定的條件,則跳過后面第x調(diào)規(guī)則
[E=variable:value]
Environmental Variable(環(huán)境變量): 命令服務(wù)器將值value賦給變量variable
[T=MIME-type]
Mime Type(MIME類型): 聲明目標(biāo)資源所屬的MIME類型
[]
匹配一個(gè)字符集合,例如[xyz]可以匹配x, y或者z
[]+
例如[xyz]+會(huì)以任何順序、次數(shù)匹配x,y,z的出現(xiàn)
[^]
字符^表示字符集的補(bǔ)集。[^xyz]將匹配沒有x,y或者z的字符串
[a-z]
連字符(-)表示匹配從字母a到字母z的所有字符串
a{n}
指定字母a出現(xiàn)的次數(shù)為n次,滿足該條件時(shí)匹配。例如x{3}僅與xxx匹配
a{n,}
指定字母a出現(xiàn)的次數(shù)至少為n次,例如x{3,}可以與xxx或者xxxx等匹配
a{n,m}
指定a出現(xiàn)的次數(shù)至少為n到m次。
()
用于將正則表達(dá)式分組,滿足第一組正則表達(dá)式的字符串會(huì)被存儲(chǔ)在變量$1中,以此類推。如果括號(hào)中的不是正則表達(dá)式,例如(perishable)?press 將能夠匹配有或者沒有perishable前綴的press
^
位于行首。注意:和中括號(hào)中的[^]意義不同。
$
位于行末
?
例如 monzas? 會(huì)匹配 monza 或者 monzas,而 mon(za)? 會(huì)匹配 mon 或者 monza。又如 x? 會(huì)匹配“空字符” 或者 一個(gè)x
!
邏輯非。例如“!string” 將會(huì)匹配除了“string”以外的所有字符串
.
表示任意字符串
–
命令A(yù)pache“不要”重寫URL,例如“xxx.domain.com.* – [F]”
+
匹配至少一個(gè)任意字符,例如G+匹配以G開頭、并且后面至少有一個(gè)字符的字符串
*
匹配零個(gè)或多個(gè)字符,例如“.*”匹配任意字符串
|
邏輯“或”,與[OR]不同的是,它只匹配字符串,例如(x|y)匹配x或者y
\
轉(zhuǎn)義字符。可以轉(zhuǎn)義左括號(hào)( 尖字符^ 美元符號(hào)$ 感嘆號(hào)! 點(diǎn). 星號(hào)* 管道符號(hào)| 右括號(hào)) 等
\.
轉(zhuǎn)義為點(diǎn)字符(點(diǎn)字符在正則表達(dá)式中可以匹配任意字符)
/*
零個(gè)或多個(gè)正斜杠
.*
零個(gè)或多個(gè)任意字符(即,匹配任意字符串,包括空字符)
^$
匹配“空字符”、“空行”
^.*$
匹配任意字符串(僅限一行)
[^/.]
匹配既非“正斜杠”也不是“點(diǎn)”的任意字符
[^/.]+
匹配第一個(gè)字符既非“正斜杠”也不是“點(diǎn)”,后繼字符可以是“正斜杠”或者“點(diǎn)”的字符串
http://
匹配“http://”
^domain.*
匹配以“domain”開始的字符串
^domain\.com$
僅匹配“domain.com”
-d
測試字符串是否是已存在的目錄
-f
測試字符串是否是已存在的文件
-s
測試字符串所指文件是否有“非零”值