我正在使用Cloudflare的自定义域名(https://thebotspeaks.com)托管我的git-hub pages网站(peps09791.github.io)。 要启用HTTPS,我已完成以下配置:
在我的_config.yaml文件中 我已相应地设置了URL密钥
网址:" https://peps0791.github.io"
在我的cloudFlare信息中心中,我启用了HTTPS重写选项,以防止出现混合内容错误。
我还从CloudFlare启用了灵活SSL。
我还没有启用默认的HTTPS重定向,因为网站会突破HTTPS。在HTTP上,它工作正常。
现在,当我尝试使用HTTPS访问我的网站时,我收到混合内容错误:
混合内容:' https://thebotspeaks.com/'是通过HTTPS加载的,但请求了一张不安全的图片' http://thebotspeaks.com/assets/images/bio-photo.jpg'。此内容也应通过HTTPS提供。
09:54:45.323(index):1混合内容:' https://thebotspeaks.com/'是通过HTTPS加载的,但是请求了一个不安全的样式表' http://thebotspeaks.com/assets/css/main.css'。此请求已被阻止;内容必须通过HTTPS提供。
09:54:45.785(索引):1混合内容:' https://thebotspeaks.com/'是通过HTTPS加载的,但请求了一个不安全的脚本' http://thebotspeaks.com/assets/js/main.min.js'。此请求已被阻止;内容必须通过HTTPS提供。
从控制台,我可以看到:
<script src="https://peps0791.github.io/assets/js/main.min.js"></script>
<link rel="stylesheet" href="https://peps0791.github.io/assets/css/main.css">
如何解决此问题?
答案 0 :(得分:7)
这里的问题是您的资产(即您的CSS或JavaScript)会重定向到您网站的HTTP版本。这是因为您的资产直接引用您的GitHub网站而不是启用Cloudflare的域。
例如;您的HTML引用了https://peps0791.github.io/assets/css/main.css
而不是https://thebotspeaks.com/assets/css/main.css
为了解决此问题,您似乎需要更新_config.yaml文件以获得以下网址密钥:
url: "https://thebotspeaks.com"
有关修复各种混合内容问题的更多一般性建议,请参阅以下有关Cloudflare知识库的文章:How do I fix the SSL Mixed Content Error Message?
答案 1 :(得分:1)
添加此项帮助我处理了在启用 HTTPS 保护的自定义域上的 GitHub 页面上的混合内容错误:
int
答案 2 :(得分:0)
显然对我来说。 Github存储库中CNAME
文件中的网站没有前缀https
。所以我添加了https://。而且有效。
欢呼
P.S:您相信一年后可以解决此问题。