我需要重写
www.domain.co.uk/store?cat=57
到
www.domain.co.uk/store/57
但我不断收到“太多重定向”错误。我的htaccess中有以下内容:
RewriteCond %{QUERY_STRING} ^cat=([^./]*)$
RewriteRule ^store\.php$ /store/%1? [R=301,L]
RewriteRule ^store/([^./]+)$ store.php?cat=$1 [L]
如果我注释掉底线,重定向会起作用,但这会阻止我的页面正确加载。
有什么想法吗?
谢谢,
克里斯
答案 0 :(得分:2)
您可以使用:
Options -MultiViews
RewriteEngine On
# external redirect from actual URL to pretty one
RewriteCond %{THE_REQUEST} \s/+store\?cat=([^\s&]+) [NC]
RewriteRule ^ /store/%1? [R=301,L,NE]
# internal forward from pretty URL to actual one
RewriteRule ^store/([^./]+)/?$ store?cat=$1 [L,QSA,NC]