Dot-Htaccess
當url在htaccess中包含問號時如何強制rerection?
我有一個網址:
www.example.com/PageName:ArgumentValue1,ArgumentValue2
我想重定向到
www.example.com/apex/f?p=alias:PageName:ArgumentValue1,ArgumentValue2
到目前為止我已經做了:
RewriteCond %{SCRIPT_FILENAME} !-d RewriteCond %{SCRIPT_FILENAME} !-f RewriteRule (.*)$ ./apex/f?p=alias:$1 [L]
重定向正常工作,除非 an
Argumentvalue
有問號。即使參數中有問號,是否有任何方法可以強制進行這種重定向?
PageName
,ArgumentValue1
並且ArgumentValue2
都是動態變數。
www.example.com/PageName:ArgumentValue1,ArgumentValue2
由於ArgumentValues是 URL 路徑的一部分,因此任何文字
?
(問號)都應按照%3F
請求中的 URL 編碼。否則,未編碼?
表示查詢字元串的開始,並有效地將 URL 分成兩部分——這就是這裡發生的情況。作為一種解決方法,您可以改為執行以下操作:
RewriteCond %{THE_REQUEST} "^GET /([^\s]+)" RewriteRule ^[^:]+: apex/f?p=alias:%1 [L]