这就是我要做的事情:
如果用户搜索
https://englishact.com/Quotation/Every+man+must+do+two+things+alone.html
htaccess将显示(仅五个字符)
https://englishact.com/Quotations/allquot.php?quotation=Every
我在htaccess尝试但没有工作:
RewriteRule ^Quotation/([.]{5})(.*)\.html$ Quotations/allquot.php?quotation=$1 [NC,L] # Handle product requests
如果您可以在上面的代码中进行编辑,将会很有帮助。
答案 0 :(得分:1)
要仅捕获Quotation/
之后和+
符号之前的前五个字母,您可以尝试这样做:
RewriteCond %{REQUEST_URI} ^/?quotation/([a-z0-9.]{5}).*\.html$ [NC]
RewriteRule ^(.*)$ /quotations/allquot.php?quotation=%1 [NC,L]
如果它们是a-z之间的字符(由于NC标志不区分大小写),数字0-9或句点,它将接受查询字符串的前五个字符。
答案 1 :(得分:1)
您的RegEx中存在问题。如果[.]
中的任何字符包含在.
中,.
将完全匹配[]
。
请尝试以下规则。它应该工作。
RewriteRule ^Quotation/(.{5})(.*)\.html$ Quotations/allquot.php?quotation=$1 [NC,L] # Handle product requests