如果包含变量 ?tag=xxx,则使用 mod_rewrite 重写 URL 301
当特定变量位于动态 URL 内的某个位置时,我似乎无法运行 301 重定向和重写。
例如,对于以下任意 URL:
/movabletype/mt-search.cgi?tag=SOMETHING&limit=20
/some-other-random-content?post=somethinghere&tag=SOMETHING
如果 tag=SOMETHING
位于 URL 内的任意位置,则重定向到: /categories/something_here/
有什么想法吗?!这是我到目前为止所拥有的 - 我不知道要在 RewriteCond 中放入什么
RewriteCond %{REQUEST_URI}
RewriteRule tag=SOMETHING /categories/something_here/ [L,R=301]
I just can't seem to be able to run a 301 redirect and rewrite when a specific variable is somewhere inside a dynamic URL.
For example, with any of these URLs:
/movabletype/mt-search.cgi?tag=SOMETHING&limit=20
/some-other-random-content?post=somethinghere&tag=SOMETHING
If tag=SOMETHING
is anywhere inside the URL, then redirect to:/categories/something_here/
Any ideas?! Here's what I have so far - I'm at a loss as to what to put inside the RewriteCond
RewriteCond %{REQUEST_URI}
RewriteRule tag=SOMETHING /categories/something_here/ [L,R=301]
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您的重写条件需要左手和右手参数。看起来您想要在存在某个 URL 参数(即标记)时进行重定向,因此您可以在条件中使用
%{QUERY_STRING}
。考虑以下示例:
这应该采用类似
/some-other-random-content?post=somethinghere&tag=SOMETHING
的 URL,并将其重定向到/categories/SOMETHING
。初学者 URL 重写可能是一个有用的指南。
Your rewrite condition requires a left- and right-hand argument. It looks like you want to redirect when a certain URL parameter is present (i.e, tag), so you can use
%{QUERY_STRING}
in your condition.Consider the following example:
This should take a URL like
/some-other-random-content?post=somethinghere&tag=SOMETHING
and redirect it to/categories/SOMETHING
.URL Rewriting for Beginners may be a helpful guide.