我在不同的服务器上为不同的子域安装了通配符 SSL 证书。
直接查看任何页面或其他内容时,所有浏览器都对该证书感到满意。
但是,如果我在网站 1 上加载包含网站 2 内容(比如图片)的页面,那么浏览器中的挂锁就会断开,并警告混合内容。所有浏览器都会发生这种情况。
这些是正在使用的 SSL 设置:
SSLProtocol -ALL -SSLv3 -SSLv2 +TLSv1
SSLCipherSuite ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA
答案1
但是,如果我在站点 1 上加载一个包含来自站点 2 的内容(比如说一张图片)的页面,那么浏览器中的挂锁就会断开,并警告有关混合内容。
这不是跨域使用内容的问题,而是跨协议的问题。混合内容意味着您尝试通过 HTTP(未加密)在 HTTPS(加密)站点上包含资源,无论这是同一主机还是不同主机。此警告是因为部分内容受到保护,而其他内容则不受保护,因此可以被中间人更改。这实际上可以使原始保护变得毫无意义。
答案2
浏览器警告混合域名,因为您使用的是混合域名。它们恰好使用相同的通配符证书这一事实与此无关。一切都按预期运行。解决方法是不要在您的 SSL 网站上使用混合域名。