我有这个网站:
www.exampale.com/index.php?action=gallery&tag_id=X
X 是 0 到 50,000 之间的数字。
我想使用 htaccess 对这个站点进行 301 重定向:
www.exampale.com/gallery/?tags=X
在这个网站上同样的事情:
www.exampale.com/?action=gallery&img_id=X (无index.php)
到站点:
www.exampale.com/image/view/X
我试试这个代码:
RewriteEngine On
RewriteRule ^index.php?action=gallery&tag_id=([0-9]+)$ /gallery/?tags=$1 [R=301,NC]
RewriteRule ^?action=gallery&img_id=([0-9]+)$ /image/view/$1 [R=301,NC]
但它不起作用,当我在没有“?”的情况下尝试时 代码运行良好。
有人可以帮助我吗?我必须在 htaccess 文件中编写什么代码?
感谢帮助 :-)
QueryString 之后的 url 部分?不是 RewriteRule 模式中匹配的一部分。您需要使用RewriteCond再次匹配%{QUERY_STRING}变量
RewriteEngine on
#index.php?action=gallery&tag_id=123 =>/gallery/?tags=123
RewriteCond %{QUERY_STRING} ^action=gallery&tag_id=([0-9]+)$ [NC]
RewriteRule ^index\.php$ http://example.com/gallery/?tags=%1 [NC,L,R]
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句