У меня есть несколько веб-сайтов на моем vps-сервере Windows Server 2003, на которых запущен apache2 через xampp. Я использую openssl.
Когда у меня был включен SSL только на 1 сайте (у меня 2 активных), все работало нормально - но теперь у меня проблемы.
Я не могу получить доступ https://liamwli.co.uk (или небезопасный вариант), поскольку Google Chrome выдает ошибку, когда я пытаюсь получить к нему доступ:
Ошибка SSL-соединения. Невозможно установить безопасное соединение с сервером. Это может быть проблема с сервером или может потребоваться сертификат аутентификации клиента, которого у вас нет. Ошибка 107 (net :: ERR_SSL_PROTOCOL_ERROR): ошибка протокола SSL.
Я могу получить доступ к своему другому сайту (techmastersforum.co.uk), но он предоставляет очень урезанный сайт. Когда я пытаюсь получить доступ к techmastersforum.co.uk через https, у меня возникает ошибка сертификата, поскольку он пытается использовать сертификат для другого моего домена.
Содержимое моего файла httpd-vhosts.conf:
NameVirtualHost *:80
<VirtualHost *:80>
ServerAdmin liam@liamwli.co.uk
DocumentRoot "C:/xampp/xampp/htdocs"
ServerName techmastersforum.co.uk
ServerAlias www.techmastersforum.co.uk
ErrorLog "logs/dummy-host.localhost-error.log"
CustomLog "logs/dummy-host.localhost-access.log" combined
</VirtualHost>
<VirtualHost *:443>
ServerAdmin liam@liamwli.co.uk
DocumentRoot "C:\xampp\xampp\blog"
ServerName liamwli.co.uk
ServerAlias www.liamwli.co.uk
ErrorLog "logs/liamwlissl.log"
CustomLog "logs/liamwlissl.log" combined
SSLEngine On
SSLCertificateFile "C:\xampp\xampp\certs\www_liamwli_co_uk.crt"
SSLCertificateKeyFile "C:\xampp\xampp\certs\www_liamwli_co_uk.key"
SSLCACertificateFile "C:\xampp\xampp\certs\GeoTrust_CA_Bundle.crt"
</VirtualHost>
<VirtualHost *:443>
ServerAdmin liam@liamwli.co.uk
DocumentRoot "C:\xampp\xampp\htdocs"
ServerName techmastersforum.co.uk
ServerAlias www.techmastersforum.co.uk
ErrorLog "logs/tmfssl.log"
CustomLog "logs/tmfssl.log" combined
SSLEngine On
SSLCertificateFile "C:\xampp\xampp\certs\www_techmastersforum_co_uk.crt"
SSLCertificateKeyFile "C:\xampp\xampp\certs\www_techmastersforum_co_uk.key"
SSLCACertificateFile "C:\xampp\xampp\certs\GeoTrust_CA_Bundle.crt"
</VirtualHost>
<VirtualHost *:80>
ServerAdmin liam@liamwli.co.uk
DocumentRoot "C:\xampp\xampp\blog"
ServerName liamwli.co.uk
ServerAlias www.liamwli.co.uk
ErrorLog "logs/dummy-host.localhost-error.log"
CustomLog "logs/dummy-host.localhost-access.log" combined
</VirtualHost>
Кто-нибудь знает, в чем моя проблема?
Как я уже сказал, я запускаю Apache2 через XAMPP на Windows Server 2003 VPS.
У меня была такая проблема. Однако мне удалось это исправить. Я бы порекомендовал вам использовать параметр httpd.exe -t для проверки синтаксических ошибок.
Вы должны указать директиву NameVirtualHost *: 443 над вставками ssl. Я предоставил исправленный файл httpd-vhosts.conf.
NameVirtualHost *:80
<VirtualHost *:80>
ServerAdmin liam@liamwli.co.uk
DocumentRoot "C:/xampp/xampp/htdocs"
ServerName techmastersforum.co.uk
ServerAlias www.techmastersforum.co.uk
ErrorLog "logs/dummy-host.localhost-error.log"
CustomLog "logs/dummy-host.localhost-access.log" combined
</VirtualHost>
<VirtualHost *:80>
ServerAdmin liam@liamwli.co.uk
DocumentRoot "C:\xampp\xampp\blog"
ServerName liamwli.co.uk
ServerAlias www.liamwli.co.uk
ErrorLog "logs/dummy-host.localhost-error.log"
CustomLog "logs/dummy-host.localhost-access.log" combined
</VirtualHost>
NameVirtualHost *:443
<VirtualHost *:443>
ServerAdmin liam@liamwli.co.uk
DocumentRoot "C:\xampp\xampp\blog"
ServerName liamwli.co.uk
ServerAlias www.liamwli.co.uk
ErrorLog "logs/liamwlissl.log"
CustomLog "logs/liamwlissl.log" combined
SSLEngine On
SSLCertificateFile "C:\xampp\xampp\certs\www_liamwli_co_uk.crt"
SSLCertificateKeyFile "C:\xampp\xampp\certs\www_liamwli_co_uk.key"
SSLCACertificateFile "C:\xampp\xampp\certs\GeoTrust_CA_Bundle.crt"
</VirtualHost>
<VirtualHost *:443>
ServerAdmin liam@liamwli.co.uk
DocumentRoot "C:\xampp\xampp\htdocs"
ServerName techmastersforum.co.uk
ServerAlias www.techmastersforum.co.uk
ErrorLog "logs/tmfssl.log"
CustomLog "logs/tmfssl.log" combined
SSLEngine On
SSLCertificateFile "C:\xampp\xampp\certs\www_techmastersforum_co_uk.crt"
SSLCertificateKeyFile "C:\xampp\xampp\certs\www_techmastersforum_co_uk.key"
SSLCACertificateFile "C:\xampp\xampp\certs\GeoTrust_CA_Bundle.crt"
</VirtualHost>
Как объяснено в этом ответе, вы не можете использовать 2 разных сертификата для одной конечной точки (ipaddress: port).
Если у вас есть 2 статических IP-адреса, назначьте каждому виртуальный хост HTTPS, например:
<VirtualHost 1.1.1.1:443>
ServerAdmin liam@liamwli.co.uk
DocumentRoot "C:\xampp\xampp\blog"
ServerName liamwli.co.uk
ServerAlias www.liamwli.co.uk
ErrorLog "logs/liamwlissl.log"
CustomLog "logs/liamwlissl.log" combined
SSLEngine On
SSLCertificateFile "C:\xampp\xampp\certs\www_liamwli_co_uk.crt"
SSLCertificateKeyFile "C:\xampp\xampp\certs\www_liamwli_co_uk.key"
SSLCACertificateFile "C:\xampp\xampp\certs\GeoTrust_CA_Bundle.crt"
</VirtualHost>
<VirtualHost 2.2.2.2:443>
ServerAdmin liam@liamwli.co.uk
DocumentRoot "C:\xampp\xampp\htdocs"
ServerName techmastersforum.co.uk
ServerAlias www.techmastersforum.co.uk
ErrorLog "logs/tmfssl.log"
CustomLog "logs/tmfssl.log" combined
SSLEngine On
SSLCertificateFile "C:\xampp\xampp\certs\www_techmastersforum_co_uk.crt"
SSLCertificateKeyFile "C:\xampp\xampp\certs\www_techmastersforum_co_uk.key"
SSLCACertificateFile "C:\xampp\xampp\certs\GeoTrust_CA_Bundle.crt"
</VirtualHost>