在前段时间菠菜园分享了在IIS服务器上实现多个SSL证书安装的教程,今天为大家继续分享nginx服务器上多个SSL证书的安装,让一台服务器上的多个不同的网站实现https访问。
过去传统的解决方案是在一台服务器上增加IP地址,这当然依然是一种解决方案。但是另外一种方案则是开启nginx的SNI扩展。
首先我们可以登录服务器看是否启用。
- nginx -V
菠菜园采用的是淘宝Tengine环境,所以可以看到已经启用过了。如果你的服务器还没启用,可以重新编译安装一次nginx即可。
启用SNI之后我们就可以直接进行配置了,配置实例参考:
- server {
- listen 443;
- server_name www.ttlsa.com;
- index index.html index.htm index.php;
- root /data/wwwroot/www.ttlsa.com/webroot;
- ssl on;
- ssl_certificate "/usr/local/nginx/conf/ssl/www.ttlsa.com.public.cer";
- ssl_certificate_key "/usr/local/nginx/conf/ssl/www.ttlsa.com.private.key";
- ......
- }
- server {
- listen 443;
- server_name www.heytool.com;
- index index.html index.htm index.php;
- root /data/wwwroot/www.heytool.com/webroot;
- ssl on;
- ssl_certificate "/usr/local/nginx/conf/ssl/www.heytool.com.public.cer";
- ssl_certificate_key "/usr/local/nginx/conf/ssl/www.heytool.com.private.key";
- ......
- }
配置完成之后,重启nginx服务即可。