【问题标题】:The page at https://xyz.com/test/checkout ran insecure content from http://xyz.com/test/checkout/css/styles.csshttps://xyz.com/test/checkout 的页面运行了来自 http://xyz.com/test/checkout/css/styles.css 的不安全内容
【发布时间】:2012-10-19 01:29:15
【问题描述】:

在 chrome 中,我的 SSL 相关页面在其他浏览器上显示为空白,它工作正常。 它给出了错误信息

https://xyz.com/test/checkout 的页面运行了来自 http://xyz.com/test/checkout/css/styles.css 的不安全内容”

在我的网站中,一些页面使用 SSL,我只有一个母版页,用于两种类型的页面(http 和 https),我想使用我的 css 和 js,这两种情况都可以使用。

【问题讨论】:

    标签: javascript asp.net css http https


    【解决方案1】:

    检查 CSS 文件中的所有资源(如图像和背景图像)。

    如果他们链接到 HTTP 域,看看你是否可以将它们重写为相对路径,这样 HTTP/HTTPS 切换是自动的。

    【讨论】:

      【解决方案2】:

      将通过 HTTPS 提供的 CSS 包含在通过常规 HTTP 提供的网页中是安全的(并且允许);因此,一种选择是在所有情况下都使用https://xyz.com/test/checkout/css/styles.css

      另一个选项,因为两个版本的路径似乎相同,是使用//xyz.com/test/checkout/css/styles.css(不指定协议);那么 CSS 将使用与 HTML 相同的协议。

      【讨论】:

      • 这样做可能是安全的,但这样做需要更多的服务器资源。如果您确实需要,请仅通过 https 提供服务。
      • @cimmanon:这是见仁见智的问题。参见例如stackoverflow.com/questions/548029/…。 Google 发现仅对 Gmail 使用 HTTPS 只会增加大约 1% 的 CPU 开销。我也读过其他报道,说这是一个不寻常的情况,其他人的比例增加要大得多,等等;但是“仅在您确实需要时才通过 https 提供服务”绝对不是没有争议的建议。
      【解决方案3】:

      【讨论】:

        【解决方案4】:

        您的 CSS 文件中可能存在与非安全位置相关的链接。

        我建议检查该文件以便进行任何更新。

        或者,您可以在您的服务器上进行 URL 重写,这样通过 HTTP 的任何内容都会被重写为 HTTPS。

        【讨论】:

          猜你喜欢
          • 2013-07-13
          • 2021-09-13
          • 2013-08-09
          • 2015-07-21
          • 2011-11-10
          • 2013-03-14
          • 1970-01-01
          • 2020-06-26
          • 2013-04-25
          相关资源
          最近更新 更多