将github页面与自定义域一起使用时出现混合内容错误

时间:2017-10-10 17:27:24

标签: ssl https github-pages cloudflare mixed-content

我正在使用Cloudflare的自定义域名(https://thebotspeaks.com)托管我的git-hub pages网站(peps09791.github.io)。 要启用HTTPS,我已完成以下配置:

  1. 在我的_config.yaml文件中 我已相应地设置了URL密钥

    网址:" https://peps0791.github.io"

  2. 在我的cloudFlare信息中心中,我启用了HTTPS重写选项,以防止出现混合内容错误。

  3. 我还从CloudFlare启用了灵活SSL。

  4. 我还没有启用默认的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">
    

    如何解决此问题?

3 个答案:

答案 0 :(得分:7)

这里的问题是您的资产(即您的CSS或JavaScript)会重定向到您网站的HTTP版本。这是因为您的资产直接引用您的GitHub网站而不是启用Cloudflare的域。

例如;您的HTML引用了https://peps0791.github.io/assets/css/main.css而不是https://thebotspeaks.com/assets/css/main.css

的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:您相信一年后可以解决此问题。