Будет ли работать эта конфигурация для включения SSL для одного домена на сервере с несколькими vhosts?
Я только что купил сертификат SSL для защиты / включения только ОДНОГО домена на сервере с несколькими vhosts. Я планирую настроить, как показано ниже (не SNI). Кроме того, я все еще хочу получить безопасный доступ к phpMyAdmin через IP-адрес моего сервера. Будет ли работать приведенная ниже конфигурация? У меня есть только один выстрел, чтобы заставить это работать в производстве. Есть ли избыточные настройки?
---apache ssl.conf file---
Listen 443
SSLCertificateFile /home/web/certs/domain1.public.crt
SSLCertificateKeyFile /home/web/certs/domain1.private.key
SSLCertificateChainFile /home/web/certs/domain1.intermediate.crt
---apache httpd.conf file----
...
DocumentRoot "/var/www/html" #currently exists
...
NameVirtualHost *:443 #new - is this really needed if "Listen 443" is in ssl.conf???
...
#below vhost currently exists, the domain I wish t enable SSL)
<VirtualHost *:80>
ServerAdmin info@domain1.com
ServerName domain1.com
ServerAlias 173.XXX.XXX.XXX
DocumentRoot /home/web/public_html/domain1.com/public
</VirtualHost>
#below vhost currently exists.
<VirtualHost *:80>
ServerName domain2.com
ServerAlias www.domain2.com
DocumentRoot /home/web/public_html/domain2.com/public
</VirtualHost>
#new -I plan on adding this vhost block to enable ssl for domain1.com!
<VirtualHost *:443>
ServerAdmin info@domain1.com
ServerName www.domain1.com
ServerAlias 173.XXX.XXX.20
SSLEngine on
SSLProtocol all
SSLCertificateFile /home/web/certs/domain1.public.crt
SSLCertificateKeyFile /home/web/certs/domain1.private.key
SSLCACertificateFile /home/web/certs/domain1.intermediate.crt
DocumentRoot /home/web/public_html/domain1.com/public
</VirtualHost>
Как упоминалось ранее, я хочу иметь возможность доступа к phpmyadmin через " https://173.xxx.xxx.xxx/hiddenfolder/phpmyadmin", который хранится в "var/www/html/hiddenfolder"
1 ответ
То, что вы пытаетесь сделать, это SNI. IP-адрес фактически является именем хоста в вопросах согласования.
Ваша конфигурация укажет и domain1.com, и https://173.xxx.xxx.20/ в один и тот же каталог.
У вас есть 4 варианта:
SNI
Получить дополнительный IP
Создайте псевдоним для phpmyamin под тем сертификатом SSL, который у вас есть
Просто прослушайте SSL на другом порту и используйте имя хоста IP. например, https://173.xxx.xxx.20:444/
Конфигурация, которую вы перечислили, скорее всего, доставит вам неприятности. Отредактируйте свой вопрос, используя какое решение вы хотите запустить. Или прокомментируйте этот ответ