[英]htaccess & RewriteRule
想知道這是否可能。
我正在使用htaccess重寫我的頁面,並且正在使用以下行:
RewriteRule ^([a-zA-Z0-9^-]+)$ page.php?page=$1
將其重寫為干凈的鏈接。 然后page.php適當地調用數據。 我想知道是否有可能,如果變量是3個字符長,它將重定向到另一頁。
RewriteRule ^([a-zA-Z0-9^-]+{3})$ small.php?char=$1
上面類似嗎? 那可能嗎? 我只是為了說明起見將{3}卡住了。 例如,如果我的地址是www.example.com/abc,它將重定向到small.php?char = abc,如果不再是它,它將重定向到page.php地址。
提前致謝,
您可以使用RewriteCond創建一個if語句,如果匹配則將用戶重定向到給定的鏈接。 RewriteCond定義一個規則條件,可以有多個條件,並且如果所有條件都匹配,則使用后續的RewriteRule:
RewriteCond %{REQUEST_URI} /^([a-zA-Z0-9^-]+{3})$
RewriteRule ^([a-zA-Z0-9^-]+{3})$ small.php?char=$1 [NC,L]
RewriteRule ^([a-zA-Z0-9^-]+)$ page.php?page=$1 [NC,L]
我會嘗試不帶+
簡單方法,將small.php規則放在前面並添加L標志(最后一個),這樣,如果它與小版本匹配,它將退出:
RewriteRule ^([a-zA-Z0-9^-]{3})$ small.php?char=$1 [L]
RewriteRule ^([a-zA-Z0-9^-]+)$ page.php?page=$1 [L]
+
代表一個或多個字符。 {3}
代表3個字符。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.