ajax创建http请求失败,AJAX调用失败,出现混合内容HTTP/HTTPS错误,无法强制HTTPS
我有一个ECB实例在ELB后面运行,为此我使用AWS Certificate Manager(ACM)启用HTTPS。如我在几个地方建议的那样,我将HTTP(端口80)和HTTPS(443)映射到我的实例的HTTP(端口80)。AJAX调用失败,出现混合内容HTTP/HTTPS错误,无法强制HTTPS我也能加入这些行.htaccess文件强制安全连接:RewriteEngine OnRewrite
我有一个ECB实例在ELB后面运行,为此我使用AWS Certificate Manager(ACM)启用HTTPS。如我在几个地方建议的那样,我将HTTP(端口80)和HTTPS(443)映射到我的实例的HTTP(端口80)。AJAX调用失败,出现混合内容HTTP/HTTPS错误,无法强制HTTPS
我也能加入这些行.htaccess文件强制安全连接:
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteCond %{HTTP:X-Forwarded-Proto} ^http$
RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
所有这一切工作粉墨登场。所有页面按预期显示安全内容,控制台中没有关于混合内容的警告。
仅在我进行AJAX调用的页面上出现关于混合内容的错误,并且仅在Chrome中出现。 FireFox按预期工作,但控制台仍然显示错误。
错误(火狐):
错误(铬):
我打开chrome://net-internals/,从我可以看到有两个呼叫的第一个接收HTTP 301 Permanent Redirect,第二个失败,因为重定向指向一个HTTP网页,而不是HTTPS。
AJAX调用看起来是这样的:
$url = "/myapi/get_company?code=" + e;
apiJson = $.ajax({
url: $url,
dataType: 'json',
data:{
limit:8
},
success: function(data) { //Some code here },
error: function(jqXHR, textStatus, errorThrown) { //Some code here }
});
我也试图让完整的URL包括协议,但没有有所作为。
+0
为什么你需要条件RewriteCond%{HTTPS}!= on? –
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐



所有评论(0)