我有这个规则:
RewriteRule ^([a-z]+)/([^-]+)-([^&]+)$ lala.php?type=$1&id=$2&title=$3 [L]
但我也有:
RewriteRule ^testpage/([^-]+)-([^&]+)$ lala.php?type=$1&id=$2&title=$3 [L]
第一条规则会覆盖第二条规则。是否有可能说smth:当([a-z] +)不是“testpage”时应用第一条规则?
由于
答案 0 :(得分:0)
RewriteRule ^testpage/([^-]+)-([^&]+)$ lala.php?type=$1&id=$2&title=INVALID-Back-reference [L]
RewriteRule ^([a-z]+)/([^-]+)-([^&]+)$ lala.php?type=$1&id=$2&title=$3 [L]
然而,第一条规则有一点问题,因为它有两个反向引用,你已经使用了三个! 你应该删除其中一个!
答案 1 :(得分:0)
你可以使用类似这个修复的东西,而没有www subdomaind
RewriteCond %{HTTP_HOST} !^(www\.|api\.)
RewriteRule (.*) http://www.%{HTTP_HOST}/$1 [R=301,L]
检查网址是否包含www。前缀或api。字首。当两者都不是这样的时候。它将添加www。子域名前缀。你的情况我有点不同,但适用相同的方法。