我的规则如下所示:
RewriteRule ^page-parent.*$ http://www.domain.com/new-page/?%{QUERY_STRING} [R=301,L]
我的问题是有一个页面 /page-parent/thanks 我不想被重定向。
我还传递了查询字符串,以便任何 ?gclid= 字符串都可以使用。
我一生无法弄清楚如何排除单个子页面或所有子页面,这也可以。
任何帮助表示赞赏。
我的规则如下所示:
RewriteRule ^page-parent.*$ http://www.domain.com/new-page/?%{QUERY_STRING} [R=301,L]
我的问题是有一个页面 /page-parent/thanks 我不想被重定向。
我还传递了查询字符串,以便任何 ?gclid= 字符串都可以使用。
我一生无法弄清楚如何排除单个子页面或所有子页面,这也可以。
任何帮助表示赞赏。
您可以检查RewriteCond
请求的页面是否是您要排除的页面。
RewriteCond %{REQUEST_URI} !^/page-parent/thanks
RewriteRule ^page-parent.*$ http://www.domain.com/new-page/ [R=301,L,QSA]
确保在重试时清除浏览器缓存,因为 301 重定向被缓存。
注意:您不需要手动附加查询字符串。
您可以使用 mod_rewrite 创建条件:
RewriteCond %{REQUEST_URI} !^/page-parent/thanks
RewriteRule ^page-parent.*$ http://www.domain.com/new-page/ [R=301,L]
请注意,您可以?%{QUERY_STRING}
从目标中省略 ,因为默认情况下查询字符串会附加到目标中,除非您通过?添加了新参数。.