例如:
RewriteCond %{QUERY_STRING} (?)argument=argument
但:
RewriteCond %{QUERY_STRING} (?)argumentext=argumentext
我發現規則:
RewriteCond %{QUERY_STRING} (?)[a-zA-Z0-9_]=[a-zA-Z0-9_]
但是這個規則只找到“=”和前后的隨機文本,但是當引數=值時我需要
例子:
IP - - [DATE] "GET /?value=value HTTP/1.1"
IP - - [DATE] "GET /?random=random HTTP/1.1"
IP - - [DATE] "GET /?qwerty=qwerty HTTP/1.1"
IP - - [DATE] "GET /?randomvalues=randomvalues HTTP/1.1"
當它們相等時需要規則
uj5u.com熱心網友回復:
您可以將此規則與捕獲組和反向參考一起使用:
RewriteCond %{QUERY_STRING} ^([^=] )=\1$
RewriteRule ^ - [G]
這里RewriteRule ^ - [G]僅用于測驗。
解釋:
^: 比賽開始([^=] )=: 匹配不在捕獲組 #1中的任何字符的 1=: 匹配一個=\1: 匹配與捕獲組 #1 中相同的值$: 結尾
uj5u.com熱心網友回復:
"GET /?value=value HTTP/1.1" "GET /?random=random HTTP/1.1" "GET /?qwerty=qwerty HTTP/1.1" "GET /?randomvalues=randomvalues HTTP/1.1"
您可以執行以下操作來匹配<something>=<something>引數名稱和值相同的位置:
RewriteCond %{QUERY_STRING} (?:^|&)(\w )=\1(?:$|&)
\1與 URL 引數名稱匹配的內部反向參考在哪里。
這name=name對可以出現在查詢字串中的任何位置,以及其他 URL 引數。但只有整個引數名稱會匹配。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/472438.html
