我有一个非常大的网站,其中包含数千个内部网页,除了网址末尾的查询字符串外,所有内部网页都具有相同的会员链接。
所有内页都使用相同的页面模板,我们需要伪装联盟网址。
例如:
我们要重定向:
www.mywebsite.com/view/video?q=the+title+of+the+video
到
www.externalwebsite.com?affid=123456?q=the+title+of+the+video
因此,每个页面上唯一会改变的部分是视频标题。
我知道如何使用以下方式在一个页面上执行此操作:
Redirect 301 /view/video?q=the+title+of+the+video
www.externalwebsite.com?affid=123456?q=the+title+of+the+video
但显然我无法浏览所有20000页并执行此操作。
我可以写一个.htaccess规则,它可以在所有页面上动态工作吗?
答案 0 :(得分:0)
如果您需要在重定向中操纵查询字符串,请使用mod_rewrite。在文档根目录的.htaccess文件中使用以下代码,或将其添加到主配置文件中的适当位置:
RewriteEngine on
RewriteRule ^view/video$ http://www.externalwebsite.com?affid=123456 [QSA,R=301,L]
[QSA]
标志会将当前查询字符串附加到新查询字符串。剩下的就是直截了当。