1
那么我已经尝试了很多代码,但仍无法弄清楚最新的工作是否正确。.htaccess带两个变量的干净url
嗯,我得到这个代码:
#--Redirect from "/?page=foo" to "/page/foo"--#
RewriteCond %{THE_REQUEST} /\?page=([^\s]+) [NC]
RewriteRule^/page/%1? [NC,L,R]
#--Rewrite "/page/foo/" to "/?page=foo"--#
RewriteRule ^page/([^/]+)/?$ /?page=$1 [NC,L,QSA]
#--Redirect from "/search.php?search=foo" to "/search/foo"--#
RewriteCond %{THE_REQUEST} /search\.php\?search=([^\s]+) [NC]
RewriteRule^/search/%1? [NC,L,R]
#--Rewrite "/search/foo/" to "/search.php?search=foo"--#
RewriteRule ^search/([^/]+)/?$ /search.php?search=$1 [NC,L,QSA]
#--Redirect from "/post.php?id_post=foo" to "/post/foo"--#
RewriteCond %{THE_REQUEST} /post\.php\?id_post=([^\s]+) [NC]
RewriteRule^/post/%1? [NC,L,R]
#--Rewrite "/post/foo/" to "/post.php?id_post=foo"--#
RewriteRule ^post/([^/]+)/?$ /post.php?id_post=$1 [NC,L,QSA]
# Support new SEO-friendly URLs
RewriteRule page/(.*) ?page=$1
RewriteRule search/(.*) search.php?search=$1
RewriteRule post/(.*) post.php?id_post=$1
和他们的工作相当不错,但现在我想提出一个加入他们的喜欢:
RewriteRule search/(.*)/page/(.*) search.php?search=$1&page=$2
链接工作得很好,但网址不会自动更改像其他人上我想知道它是否可能,如果是的话请帮助:)
感谢先进。
好了,你可以看到别人正在使用的模式。首先有一个条件和规则将旧格式重定向到新格式,然后是将新格式重新写回旧/实际格式的规则。所以请按照同样的原则为这个新的一个,你会一切设置。 –
我已经尝试过,没有工作,我可以在这里粘贴我做了什么,你可以修复它? – luckr