У меня есть CentOS 6 VPS с 5 сайтами и установленным Let's Encrypt и работает на всех сайтах. Когда я получаю доступ к https: // vps-ip , он всегда указывает на первый сайт, настроенный в vhosts-ssl-letsencrypt.conf (I ' Я попытался добавить:
<VirtualHost ip:443>
ServerName ip
Redirect 403 /
ErrorDocument 403 "No"
DocumentRoot /usr/local/apache/htdocs
UseCanonicalName Off
UserDir disabled
</VirtualHost>
, но сайты недоступны через ssl
or <VirtualHost *:443>...
выдает следующую ошибку: [error] Сервер должен поддерживать SSL, но не имеет настроенного сертификата [Подсказка: SSLCertificateFile] ((null): 0 )
<VirtualHost *>...
без изменений
http: // vps-ip указывает на правую страницу приветствия vps. Есть идеи?
Простой ответ: вы не включили SSL для своего виртуального хоста *: 443
в приведенном выше вопросе. Apache не начинает внезапно использовать SSL для виртуального хоста только потому, что вы подключили его к порту 443.
Кроме того, эта директива не делает ничего разумного:
Redirect 403 /
И вы не должны использовать
<VirtualHost *>
Это вызовет всевозможные проблемы. Используйте IP: порт
или *: порт
и ничего больше. Также не смешивайте эти два типа аргументов, если вы точно не знаете, что делаете.
РЕДАКТИРОВАТЬ: В ответ на первый комментарий: Добавьте виртуальный хост SSL по умолчанию
. Он должен быть первым в списке для порта 443 в выходных данных apachectl -S
и добавить IP-адрес в качестве ServerName
или ServerAlias
EDIT2: в ответ к дальнейшим комментариям. Похоже, вы не включили SSL. На вашем виртуальном хосте есть минимум три директивы SSL, необходимые для включения SSL, они подробно описаны здесь: http://httpd.apache.org/docs/current/ssl/ssl_howto.html