我有一个5个站点的CentOS 6 VPS,让我们encryption安装并在所有站点上运行。 当我访问https:// vps-ip时 ,它总是指向在vhosts-ssl-letsencrypt.conf中configuration的第一个站点(我已经更改了configuration并在configuration的顶部放置了另一个站点来testing它)。 我试着添加:
<VirtualHost ip:443> ServerName ip Redirect 403 / ErrorDocument 403 "No" DocumentRoot /usr/local/apache/htdocs UseCanonicalName Off UserDir disabled </VirtualHost>
但网站不能通过SSL访问
or <VirtualHost *:443>...
给我这个错误:[错误]服务器应该是SSL感知,但没有configuration证书[提示:SSLCertificateFile]((null):0)
<VirtualHost *>...
不用找了
http:// vps-ip指向正确的vps欢迎页面。 有任何想法吗?
简单的答案是你在上面的问题中没有为你的*:443虚拟主机启用SSL。 Apache不会因为把它放在端口443上而突然开始为一个虚拟主机说SSL,它需要configuration。
而且这个指令也不是什么明智的做法:
Redirect 403 /
而你不应该使用
<VirtualHost *>
这会造成各种各样的问题。 使用IP:port或*:port ,没有别的。 除非你确切地知道你在做什么,否则不要混合这两种types的参数。
编辑:作为对第一条评论的回应:添加一个default SSL虚拟主机。 它必须是在apachectl -S的输出中为端口443列出的第一个,并将IP地址添加为ServerName或ServerAlias
编辑2:回应进一步的评论。 这似乎你还没有启用SSL。 在您的虚拟主机中,您需要使用三条SSL指令来启用SSL,这些指令在此处详细介绍: http : //httpd.apache.org/docs/current/ssl/ssl_howto.html