[英]htaccess rewrite rule for query string redirect?
我在 wordpress 中的 htaccess 代碼塊工作正常,但盡管知道它的作用,但我無法理解語法。
RewriteCond %{QUERY_STRING} "mobileSite=" [NC] RewriteRule (.*) /$1? [R=301,L]
例如一個網址如下
www.example.com/?mobileSite=1
將被重定向到
www.example.com
代碼工作正常,但我無法理解實際的語法部分。 例如, (.*) /$1? [R=301,L]
(.*) /$1? [R=301,L]
怎么辦?
mobileSite
之后的mobileSite
是一個介於 0 和 1 之間的變量,但它不包含在RewriteCond %{QUERY_STRING} "mobileSite=" [NC]
盡管代碼實際有效。
請向我解釋語法?
謝謝
如果您只想匹配查詢參數中的0
或1
,請使用:
RewriteCond %{QUERY_STRING} ^mobileSite=[01]$ [NC]
RewriteRule (.*) /$1? [R=301,L]
RewriteRule
分解:
(.*) # match anything in URI and group it in captured group #1
/$1 # $1 is back-reference of captured value in (.*)
R=301 # redirect with status 301
L # Last rule
? # ? in the end is for stripping any previous query string
RewriteCond
分解:
%{QUERY_STRING} # match from query string
^ # start
mobileSite=[01] # match mobileSite=0 or mobileSite=1
$ # end
[NC] # flag for ignore case
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.