【问题标题】:Replacing url from 'https' to 'http', my url goes refreshing infinitely将 url 从“https”替换为“http”,我的 url 无限刷新
【发布时间】:2015-02-15 15:06:22
【问题描述】:

我正面临一个有趣的问题。我正在用另一个网址 [http://www.draoms.com/login.cfm ] 替换我的生产网址 [https://www.draoms.com/] (这是相同的网址,只是我附加了最初执行的文件名)。现在的问题是——当我点击网址 www.draoms.com 时,它会不断刷新……。就像循环一样。

这是一个生产环境,所以我不能直接去那里改变。在对产品进行任何此类更改之前需要有信心。因此得到你的帮助。提前致谢。

我的应用程序在 ColdFusion 中。

代码是我在 index.cfm 中编写的:

<script>
document.location.replace("http://www.draoms.com/login.cfm");
</script>

【问题讨论】:

标签: javascript coldfusion


【解决方案1】:

我想我的问题,在继续之前,是问你为什么要重定向到 http?安全连接的一半完整性是从安全点传输的数据。许多网站允许用户通过标准 http 连接浏览不涉及用户输入的页面(“主页”、“关于我们”),但是当您使用登录表单链接到页面时。你去 https://。

一个很好的相关问题:https://security.stackexchange.com/questions/1692/is-posting-from-http-to-https-a-bad-practice


无论如何,你的 javascript 的问题在于你没有检查协议,所以你只是无限地告诉页面重定向。

您可以轻松地调整这个问题的答案:Detect HTTP or HTTPS then force HTTPS in JavaScript

问题在于这真的不是 javascript 的任务。 .htaccess/IIS-rewrite 可以为你做到这一点。

您希望每个 https 页面都重定向到其对应的 http:// 吗?通过 .htaccess 或 IIS 重写 URL 可以做到这一点。

您可以从这个答案中学到很多东西:Rewriting URLs from https:// to http:// in IIS7 for IIS。

您可以从 .htacess 的这个答案中学习:Https to http redirect using htaccess

Cold Fusion 也可以做到这一点,但我更喜欢让 .htacess 处理站点范围的重定向。

<cfif cgi.https eq 1>
  <cflocation url="http://www.draoms.com/login.cfm">
</cfif>

您可以将每个 https 访问的页面重定向到此页面,您可以使用类似的方式将每个页面重定向到它的 http 对应页面。

<cfif cgi.https eq 1>
  <cflocation url="http://www.draoms.com/#cgi.script_name#?#cgi.query_string#">
</cfif>

再次,如果它是一个全局操作,我觉得 .htaccess 或 IIS 处理得很好。

【讨论】:

  • 其实我并不想使用http。但不知何故,需求是这样来的。但是我肯定会按照您的建议将其更改为https。那么您是说页面刷新是由于从https到http的url不兼容造成的吗? 'https' 是之前的原始网址。
  • @Vasu &lt;script&gt; document.location.replace("http://www.draoms.com/login.cfm"); &lt;/script&gt; 此代码不寻找https://,它只是将用户重定向到http 页面,即使他们已经在http 页面上。我链接的 javascript 建议您使用 if (window.location.protocol == "https:") { document.location.replace("http://www.draoms.com/login.cfm"); }
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-07-14
  • 1970-01-01
  • 2014-07-18
  • 2021-08-01
  • 2014-09-20
  • 2011-06-02
相关资源
最近更新 更多