Bootstrap

Mixed Content: The page at ‘https://xxxx‘ was loaded over HTTPS

问题描述

Mixed Content: The page at ‘https://xxxx’ was loaded over HTTPS,
but requested an insecure frame ‘http://xxxx’.
This request has been blocked; the content must be served over HTTPS.

解决方案:

  1. 找到报错的页面吧引用的http协议资源链接都改成协议https链接

  2. 找到报错对应的页面,在页面模板中引入如下meta标签内容
    说明:此代码意思是自动将http的不安全请求升级为https

 <meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">
  1. 在nginx增加代理配置
    proxy_redirect http:// $scheme://;
location / {
	proxy_pass http://127.0.0.1:8080;
	proxy_set_header Host $host;
	proxy_set_header X-Real-IP $remote_addr;
	proxy_set_header REMOTE-HOST $remote_addr;
	proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
	proxy_redirect http:// $scheme://;
      }
  说明:该指令会将后端响应的header,localhohst内容中的http://转换成https://  就不会再强制跳转到http下了
	X-Frame-Options是一个HTTP响应头,用来指示浏览器是否应该被允许在<frame>、<iframe>或者<object>中展示页面内容。这是一种防止点击劫持攻击的安全措施。

X-Frame-Options有三个值:

DENY:页面不会被嵌入到任何iframe或frame中。

SAMEORIGIN:页面只可以被同源域名下的页面嵌入到iframe或frame中。

ALLOW-FROM uri:页面可以被指定来源的页面嵌入,但这个指令已经被废弃,并且不应该再使用。

如果你没有在你的服务器配置中设置X-Frame-Options响应头,大多数现代浏览器会采用默认行为,通常是DENY。因此,如果你不希望页面被嵌入,你不需要设置这个响应头,或者显式地设置为DENY

;