document.referrer变空白

时间:2013-07-17 17:06:10

标签: javascript html iis redirect

我在IIS中将错误页面设置为httpRedirect.htm,尝试将任何http请求转换为https,此时错误403.4被捕获。

因此,如果用户在浏览器中键入http url,它会触发httpRedirect.htm页面并获取此URL,将http替换为https,然后重定向到此新URL。我想在javascript中发生这种情况。

但是,当我在httpRedirect.htm中使用document.referrer时,我发现它总是返回空白。

这种情况有什么特别的考虑吗?使用此错误页面的浏览器是否可以携带上一个请求中的信息?

1 个答案:

答案 0 :(得分:0)

您必须查看位置对象。重定向位于服务器端。

方案:

  1. 您直接转到http://example.com/index.html,然后 httpRedirect.htm已呈现。因为那是你的第一页 访问,推荐人是空的。
  2. 您在http://test.com/index.html并点击指向的链接 http://example.com/index.html。您现在看到的是httpRedirect.html, 但引用者是之前的页面,即 http://test.com/index.html
  3. 由于引荐来源取决于您的浏览器,因此您无法确定在引用对象中有任何内容,即使它“应该”在那里。一些防火墙和防病毒应用程序可能伪装得很好。

    如果你在http://example.com/index.html并且看到了httpRedirect.htm,那么location.href仍然是http://example.com/index.html

    您可以在此处查看使用位置的示例代码: http://kloudgate.wordpress.com/2013/05/30/how-to-redirect-http-to-https-using-iis7-0/