如何在重写规则上设置referer?

时间:2010-06-17 15:51:17

标签: apache .htaccess mod-rewrite http-referer referer

我有以下问题:我使用保存引用URL的脚本。我希望这个URL到我自己的一个URL。因此,假设用户访问页面http://example.com/page1我想将该网址重写为http://example.com/page2,并在该页面上保护引用者。

我不想用PHP脚本这样做,否则每次我想跟踪一个新的referer时我都必须扩展该脚本。我已经尝试过这些重写规则:

RewriteRule ^page1$ /page2 [R=301,QSA,NC]
RewriteRule ^page1$ /page2 [L,R=301,QSA,NC]

重写有效,但缺少请求参数referer。我是否必须使用除301之外的其他stauts代码,或者在我的重写中是否有任何其他错误。是否可以在重写规则中设置引用?

1 个答案:

答案 0 :(得分:1)

使用 R 标志会导致外部重定向。如果您只想进行内部重写,请省略 R 标志:

RewriteRule ^page1$ /page2 [QSA,NC]