如何使用虚拟主机将所有流量重定向到单个SSL www?

时间:2017-02-15 20:04:42

标签: apache ssl virtualhost

我有一个网站(比如example.com),在LAMP设置上运行,带有来自Mozilla批准的CA的CA签名证书。

我希望所有流量都转到https://www.example.com,以便搜索引擎正确汇总链接和用户体验,以便与所有客户端(Chrome桌面,Safari移动设备等)保持一致。

因此,如果用户请求:

http://example.com
http://www.example.com
https://example.com

所有这些都会重定向到https://www.example.com

根据Apache documentation,使用虚拟主机执行此操作的简单且最安全的方法。所以我在我的httpd conf中设置了以下虚拟主机设置:

<VirtualHost *:80>
    ServerName www.example.com
    ServerAlias example.com
    Redirect 301 / https://www.example.com/
</VirtualHost>

<VirtualHost *:443>
    ServerName www.example.com
    ServerAlias example.com
    # ... SSL configuration goes here
    SSLEngine on
    SSLCertificateFile /etc/pki/tls/certs/example.crt
    SSLCertificateKeyFile /etc/pki/tls/private/example.key
    SSLCACertificateFile /etc/pki/tls/certs/example-bundle.crt
</VirtualHost>

在桌面上的Chrome和Firefox上,这具有预期的效果。所有流量都成功发送到https://www.example.com,并且已识别CA签名证书(无浏览器警告)。

但是,在Chrome移动版上,我收到了ERR_CERT_AUTHORITY_INVALID消息。另外,我有Twilio点击这项服务,我从Twilio服务收到同样的错误。

鉴于上述情况,我的两个关键问题是:

  • 为什么上述设置会生成ERR_CERT_AUTHORITY_INVALID 有些情况但不是全部吗?
  • 以上设置是否符合目标 使所有版本的example.com看起来像SEO性能的目的?如果没有,我需要调整什么?

0 个答案:

没有答案