На работе я работал над одним веб-приложением с Apache на opensuse, прослушивающим один IP, скажем, 123.123.123.200. Теперь мы добавляем другое веб-приложение на ту же машину. У обоих есть свои собственные SSL-сертификаты. SSL отлично работает на одном веб-сайте, который уже был запущен там ранее. Теперь мой apache vhosts.conf выглядит следующим образом
Listen 80
Listen 443
NameVirtualHost 123.123.123.200:80
NameVirtualHost 123.123.123.200:443
<VirtualHost 123.123.123.200:443>
DocumentRoot /srv/www/domainone
ServerName domainone
SSLEngine On
SSLCertificateFile /srv/cert/domainone.crt
SSLCertificateKeyFile /srv/cert/domainone.key
</VirtualHost>
<VirtualHost 123.123.123.200:80>
DocumentRoot /srv/www/domainone
ServerName domainone
</VirtualHost>
<VirtualHost 123.123.123.201:443>
DocumentRoot /srv/www/domaintwo
ServerName domaintwo
SSLEngine On
SSLCertificateFile /srv/cert/domaintwo.cer
SSLCertificateKeyFile /srv/cert/domaintwo.key
</VirtualHost>
<VirtualHost 123.123.123.201:80>
DocumentRoot /srv/www/domaintwo
ServerName domaintwo
</VirtualHost>
с этой конфигурацией я получаю ошибку при запуске Apache, но если я отключаю записи для 123.123.123.201, то Apache запускается нормально.
Что я делаю не так?
еще одна вещь, связанная с той же настройкой, это как настроить Apache для прослушивания нескольких IP. Это под контролем Apache или операционной системы?
решение1
Похоже, вы забыли добавить 123.123.123.201:80
«и» 123.123.123.201:443
к своим NameVirtualHost
строфам.