我想在HTTPS登录后将用户重定向到网站上的HTTP页面。不会在整个网站上使用HTTPS。
到目前为止我的内容如下:
这是有效的,除了在IE6中的我的机器上,用户收到错误消息,因为默认是在退出安全页面时发出警告。这些错误对我来说是一个可用性杀手,因而是一个显而易见的问题。我更改了它,以便第3步
但这很慢;即使在我的本地机器上它也明显慢于302重定向。
有没有更好的方法来实现人们使用的标准设置上无障碍重定向的目标? IE6占我们流量的20%-25%。此外,是否有人有任何关于哪些浏览器会发出警告以及哪些浏览器不会警告302重定向的好信息?我正在考虑黑名单IE6,这样只有它获得缓慢的元刷新,其他人都获得了快速的302.
答案 0 :(得分:11)
恢复旧主题,但要使其能够发布以下内容,以便其他开发人员可以选择实施
将https转换为http而没有警告消息的一种方法是使用javascript使用客户端重定向。
步骤
不会显示任何浏览器警告消息
HTH
答案 1 :(得分:5)
我正在考虑将IE6列入黑名单,这样只有它才能获得缓慢的元刷新,而其他所有人都会获得快速的302.
我会做那样的事情。还包括正文中的纯HTML链接以便访问。
请注意,其他一些浏览器确实提供了关于离开HTTPS站点的类似警告,但在他们的情况下,它伴随着(通常是预先勾选的)“不要再问我”按钮。因此,当他们到达您的网站时,他们几乎肯定会告诉警告消失。这并不会使警告毫无意义,但至少可以缓解这个问题。
- 安全服务器向客户端发送302重定向
醇>
你不应该回应POST。认真对待HTTP RFC的理论浏览器可能会通过将表单重新发布到新URL来响应。 (具有讽刺意味的是,这会使IE6对有关信息的警告“重新传输到不安全的网站”的误导性较小。)而是使用“303见其他”。
答案 2 :(得分:2)
我认为没有其他办法。该错误消息是为了用户的利益,现在也出现在IE 7和Firefox 3中。我知道防止它的唯一方法是在浏览器中将您的网站添加为可信任的。
更新:哦,所以这不是混合内容错误。我知道你的意思,尽管我仍然认为你不能禁用错误。通常,安全错误是为了保护用户免受潜在危险站点的侵害,因此不能被(可能不安全的)网站本身禁用。