所以我有一个网站(我使用nginx)。 我可以连接到https://example.com就好了。 但是,如果我连接到https://www.example.com,那么它说,有关连接的东西是encryption的,但页面上的资源不是。 页面上没有资源(页面完全相同,不pipe它们是否具有“www”)。
我唯一能想到的是,也许不知何故,cookies不encryption?
我怎样才能弄清楚这个问题,我该如何解决这个问题(当然,我首先需要弄清楚这个问题)。
您描述的错误不应与用于访问该站点的主机名有关(您将收到另一个错误,指出该证书被发布为不同的名称)。 要解决这个问题,请尝试下面列出的解决scheme: http : //www.sslshopper.com/article-stop-the-page-contains-secure-and-nonsecure-items-warning.html
如果您的SSL证书是www.example.com,那么它将不会在example.com上运行,反之亦然。 SSL证书仅适用于特定的域(在这种情况下,www.example.com被视为特定的子域)。
解决这个问题的唯一方法就是获得可在www.example.com和example.com上运行的通配符SSL证书。
如果您没有通配符SSL证书 ,则可以使用mod_rewrite将任何对example.com的请求重写为www.example.com。
RewriteEngine On RewriteCond %{HTTPS} =on RewriteCond %{HTTP_HOST} !^www\.example.com [NC] RewriteRule ^(.*) https://www.example.com/$1 [L,R=301]