gpt4 book ai didi

javascript - 将网址从 'https' 替换为 'http' ,我的网址无限刷新

转载 作者:行者123 更新时间:2023-11-28 19:27:40 24 4
gpt4 key购买 nike

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

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

我的应用程序位于 ColdFusion 中。

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

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

最佳答案

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

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

<小时/>

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

您可以轻松地调整此问题的答案: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对于 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 可以很好地处理这个问题。

关于javascript - 将网址从 'https' 替换为 'http' ,我的网址无限刷新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27519289/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com