免费的公用证书可以到StartCom网站获取 ,网址:https://startssl.com/,注册一个帐号,然后按Certificates Wizard步骤填写信息
下一步需要填入csr证书信息, 可以下载红箭头处的StartComTool.exe生成,生产csr证书同时会生成一个.key的私钥文件,这个之后在配置Nginx证书时候用到。
步骤完成之后,在Tool Box - Certificate List查看证书列表
点击Retrieve下载证书包,打开之后有4个文件,分别是不同服务器所使用的证书
因为我的网站服务器使用的是Nginx,所以我只需要NginxServer.zip,解压后是一个crt证书文件
下面是Nginx配置文件中如何配置证书,这里的.key文件是之前用StartComTool.exe生成csr证书时生成的私钥文件
server {
listen 80;
charset utf-8;
server_name DOMAIN_NAME;
location ~ /\d+/.*\.(jpg|JPG|png|PNG|gif|GIF|jpeg|JPEG) {
root /mnt/img01/;
expires 7d;
}
location ^~ /images/{
root /var/www/wap;
expires 7d;
}
location ^~ /js/{
root /var/www/wap;
expires 7d;
}
location ^~ /css/{
root /var/www/wap;
expires 7d;
}
location ~ \.(html|jsp) {
proxy_pass http://127.0.0.1:9202;
}
location ^~ /user/login.html{
return 301 https://$server_name$request_uri;
}
location ^~ /userCenter/index.html{
return 301 https://$server_name$request_uri;
}
location ^~ /venue/order-confirm.html{
return 301 https://$server_name$request_uri;
}
location ^~ /activity/order-confirm.html{
return 301 https://$server_name$request_uri;
}
}
server {
listen 443;
server_name DOMAIN_NAME;
ssl on;
ssl_certificate XXX.crt;
ssl_certificate_key XXX.key;
ssl_session_cache shared:SSL:20m;
ssl_session_timeout 20m;
location / {
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
#proxy_pass http://127.0.0.1:9202;
proxy_pass http://wap_tomcat;
proxy_set_header X-Forwarded-Proto https;
#proxy_redirect off;
}
}
该段配置配置了DOMAIN_NAME部分URI地址需要SSL认证, 采用return 301方式跳转,也可以用redirect方式
此处没有配置Tomcat 的ssl协议层,如需配置,可以在StartCom网站的ToolBox - Create PKCS#12(PFX )File里面生产p12证书,然后通过jdk的keytool生成keystore