我有一个完全的根访问,其中承载3个域的Web服务器。 它们位于相同的IP上,并通过运行apache2的VirtualHost文件进行pipe理。
我想向其中的一个添加SSLfunction,即能够通过https://example.com访问同一个站点
我已经尝试了我在网上find的所有东西,但其中大部分都会导致apache根本没有提供任何内容。
我会很高兴有关如何configuration我的系统来支持这一点的任何帮助。
谢谢,
通恰伊
你必须添加到Apache的conf
NameVirtualHost xxxx:443
用你的IP,然后是虚拟主机
<VirtualHost xxxx:443> SSLEngine on SSLCertificateFile /etc/apache2/ssl/cert.pem SSLCertificateKeyFile /etc/apache2/ssl/key.pem SSLCertificateChainFile /etc/apache2/ssl/ca.crt # ... </VirtualHost>
你所要求的是不可能的。 SSL是封装你的HTTP会话的一个单独的层,它发生在HTTP会话开始之前。 在这一点上,Apache无法确定您试图通过哪个主机名访问服务器。
您只能使用带有SSL的基于IP的虚拟主机。
有关更多信息,请参阅Apache SSL / TLS FAQ的这一部分 。
编辑:对不起,我误解了你的问题。 我以为你想要所有的域的SSL。 但是,如果您看到相同的FAQ,那么您的问题的解决scheme也在那里。 您需要明确指定基于HTTP的NameVirtualHosts的端口。