【问题标题】:Ajax call is not working from http to https?Ajax 调用不能从 http 到 https 工作?
【发布时间】:2013-10-09 03:23:17
【问题描述】:

我使用 htacess 将服务器中的某些文件夹限制为 http 和 https,在我的一些非 https 页面中,我需要调用使用 https(在同一域中)的 ajax 脚本(php),它不是工作(https 到 https 工作正常)。

我有 tutorials/ 路径被重写为仅使用 http,我还有一个文件夹(路径)ajax/ 被重写为使用 https,我正在从 tutorials/ 调用 ajax/,但失败了。

【问题讨论】:

  • 你能显示你的代码吗? PHP / JavaScript ?
  • 要考虑的事情太多了,不能简单地从您的帖子中推断出来。
  • 你能用 ajax 调用的 https 浏览页面吗?

标签: http https


【解决方案1】:

出于安全原因,ajax 的限制是不能从 http 页面访问任何 https 页面。建议如果要使用 https,则必须使用 https 访问网站中的所有页面。为确保这一点,您应该使用相对路径。如果您使用相关路径,则 http 或 https 将根据您访问其他页面的源页面自动计算。

【讨论】:

  • 我已将 tutorials/ 限制为 http 仅适用于某些 SEO 潜在客户,将 ajax/ 限制为 https,我必须从 tutorials/ 路径调用 ajax 脚本到 ajax/ 路径,ajax 脚本位于 ajax/ (https) ...通话失败。任何建议.....
  • 你需要把你的应用分成两部分,http页面和https页面。 http和https之间不应该有任何跨页访问。对你来说,我建议对你的所有页面使用 https,因为 https 通过 http 没有副作用(除了最小的性能下降)。用户应该能够毫无问题地访问这些页面。如果用户以 http 形式输入 url,那么您可以使用服务器端代码逻辑将 http 请求重定向到 https。
  • 这是一个很好的建议,但我在使用 IE 时遇到了一些问题,每次都会显示一个烦人的弹出窗口。我也在考虑 SEO 前景...
  • 哈哈哈 :) 我也遇到过这个烦人的 IE 弹出窗口。但是我们将我们的应用程序划分为 http 页面或 https 页面,并删除了一种类型对另一种类型的依赖。它也解决了我们的 SEO 问题。我有一个疑问,您正在从 http 页面访问 https 页面,因为 http 页面将使用 SEO,但在这种情况下,您不应该从 http 页面调用 https 页面。这会被认为是糟糕的设计。
  • 没错...我已经将所有 ajax 脚本保存在一个文件夹中...我想我可以对其进行重组,我只使用非 https 页面中的两个脚本...。 .感谢您的回复,并帮助了我。
猜你喜欢
  • 1970-01-01
  • 2014-05-09
  • 2022-01-04
  • 2016-10-17
  • 2014-07-26
  • 2018-07-27
  • 1970-01-01
  • 2012-03-20
  • 2021-05-15
相关资源
最近更新 更多