我的规则如下:
RewriteRule ^page-parent.*$ http://www.domain.com/new-page/?%{QUERY_STRING} [R=301,L]
我的问题是有一个页面/页面 - 父/感谢我不想重定向。
我也传递了查询字符串,以便任何?gclid = string都可以使用。
我不能为我的生活弄清楚如何排除单个子页面或所有子页面,这也会起作用。
感谢任何帮助。
答案 0 :(得分:1)
如果请求的页面是您要排除的页面,则可以使用RewriteCond
进行检查。
RewriteCond %{REQUEST_URI} !^/page-parent/thanks
RewriteRule ^page-parent.*$ http://www.domain.com/new-page/ [R=301,L,QSA]
请确保在重试时清理浏览器缓存,因为301-redirects已缓存。
注意:您无需手动附加查询字符串。
答案 1 :(得分:0)
您可以使用mod_rewrite创建条件:
RewriteCond %{REQUEST_URI} !^/page-parent/thanks
RewriteRule ^page-parent.*$ http://www.domain.com/new-page/ [R=301,L]
请注意,您可以忽略目标中的?%{QUERY_STRING}
,因为默认情况下会将查询字符串附加到目标,除非您通过?添加了新的参数。