我的网址:www.example.com/store?store=1
所需网址:www.example.com/store/1
我在SO上看到了许多与此相似的答案,但没有解决我的问题。对答案的一点解释将非常感激。
由于
答案 0 :(得分:0)
尝试以下代码
RewriteCond %{QUERY_STRING} (^|&)store=1($|&)
RewriteRule ^www\.example\.com/store$ /www.example.com/store/1?&%{QUERY_STRING}
我希望它会起作用
答案 1 :(得分:0)
隐蔽
到
您可以在root/.htaccess
RewriteEngine on
#1)externally redirct "/store?store=foo" to "/store/foo"
RewriteCond %{THE_REQUEST} /store/?\?store=([^\s]+) [NC]
RewriteRule ^ /store/%1? [L,R]
##2)internally redirect the new url "/store/foo" to /store?store=foo##
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^store/([^/]+)/?$ /store?store=$1 [NC,L]
注意:如果您要将其放在store/.htaccess
中,只需删除#2规则中的文件夹名称和尾随斜杠,只需将模式^store/([^/]+)/?$
更改为^([^/]+)/?$
即可使用子文件夹htacess中的规则。