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

Apache 如何使用虚拟主机将所有流量重定向到单个SSL www?,apache,ssl,virtualhost,Apache,Ssl,Virtualhost,我有一个网站(比如example.com),运行在LAMP设置上,有一个由Mozilla认可的CA签署的CA证书 我希望所有的流量都能达到,这样搜索引擎就能正确地聚合链接和用户体验,从而与所有客户端(Chrome桌面、safari mobile等)保持一致 因此,如果用户请求: http://example.com http://www.example.com https://example.com 所有这些都将重定向到 据介绍,这是使用虚拟主机实现这一目标的最简单、最安全的方法。因此,我在h

我有一个网站(比如example.com),运行在LAMP设置上,有一个由Mozilla认可的CA签署的CA证书

我希望所有的流量都能达到,这样搜索引擎就能正确地聚合链接和用户体验,从而与所有客户端(Chrome桌面、safari mobile等)保持一致

因此,如果用户请求:

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

据介绍,这是使用虚拟主机实现这一目标的最简单、最安全的方法。因此,我在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>

服务器名www.example.com
ServerAlias example.com
重定向301/https://www.example.com/
服务器名www.example.com
ServerAlias example.com
# ... SSL配置在这里
斯伦金安
SSLCertificateFile/etc/pki/tls/certs/example.crt
SSLCertificateKeyFile/etc/pki/tls/private/example.key
SSLCACertificateFile/etc/pki/tls/certs/example-bundle.crt
在桌面上的Chrome和Firefox上,这具有预期的效果。所有流量均已成功发送至,且CA签名证书已识别(无浏览器警告)

然而,在Chrome mobile上,我收到了ERR\u CERT\u AUTHORITY\u INVALID消息。另外,我让Twilio点击了这个服务,我从Twilio服务收到了同样的错误

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

  • 为什么上面的设置会在中生成错误证书权限无效 有些案例,但不是全部
  • 上述设置是否满足以下目标: 为了提高搜索引擎优化性能,让example.com的所有版本看起来都像一个?如果没有,我需要调整什么

我猜您的SSL设置没有正确完成,并且缺少链证书,即它与重定向无关,但仅与SSL设置相关。桌面浏览器通常会填充丢失的链证书,而其他客户端则不会。检查你的网站,并留意连锁问题。在回答你的第二个问题时,它确实达到了这个目标。第一个问题见斯蒂芬的评论。@SteffenNullrich我认为你是对的。自发布以来,它已经开始在谷歌Chrome上工作(没有进一步的更改),但Twilio ping仍然失败,因为它找不到证书的路径。我检查了SSLLAB,它确实指出了一个缺失的链问题。也就是说,我是SSL设置的noob,不知道如何修复它。我安装了CA提供的两个证书(我的证书和捆绑证书)。你知道我在哪里可以聪明地解决连锁证书问题吗?@SteffenUllrich ugh,我是个笨蛋。回头看了看bundle证书,意识到我不知何故删掉了“----BEGIN…”行的前10个字符。已修复,它正在工作。投票关闭,因为这是一个配置问题,不负责。