是否可以在 Apache 2.x 的同一台服务器上同时运行 SSL 协议和非 SSL 协议?
因此,如果我访问http://example.com
(非 SSL)和https://example.com
(SSL),它们都将可用。
如果是这样,我需要创建一个虚拟主机吗?这个VirtualHost
指令是什么样子的,谁能给我一个例子?(假设我已经有证书)
是的,您只需在端口 443 (HTTPS) 上添加另一个同名的 VirtualHost。设置SSLProtocol
为您希望允许的任何协议。
<VirtualHost *:80>
ServerName your-domain.com
DocumentRoot /var/www/your-domain-root
</VirtualHost>
<VirtualHost *:443>
DocumentRoot /var/www/your-domain-root
ServerName your-domain.com
SSLEngine On
SSLOptions +StrictRequire
SSLCertificateFile /path/to/server.crt
SSLCertificateKeyFile /path/to/server.key
SSLProtocol TLSv1
</VirtualHost>