基础准备: 一台服务器,一个主域名或多级域名,本次申请的免费
本次环境使用 centos6.5 + nginx1.8 + jdk1.8 + tomcat8
如果需要收费的请参考:
云盾证书服务(包年)-购买-阿里云
SSL证书 - 腾讯云
一. 申请免费 HTTPS 证书
1. 输入网址 https://freessl.org/
2. 输入你的准备好的域名, 选择亚洲诚信, 点击创建
3. 输入你的邮箱, 选择证书品牌, 证书类型 (RSA), 验证类型 (DNS),CSR 生成 (后端服务器生成), 点击创建
4. 在网页下出现如下图所示效果
6. 在你的域名管理平台下, 填写如上所述信息, 点击保存,然后点击 DNS 验证, 验证通过后下载证书
7. 下载证书文件, 并改变文件名称
full_chain.pem --> 1_blog.zousiliang.com_bundle.crtprivate.key ??--> ?2_blog.zousiliang.com.key
二. 服务器环境配置
下载 jdk1.8 和 tomcat8 配置流程一样
1.jdk 安装教程
jdk环境配置 - 益达MIM味
2.tomcat 安装教程
tomcat环境 - 益达MIM味
3.nginx 安装教程
Nginx环境搭建 - 益达MIM味
4. 配置上面环境后进行 https 配置
上传证书文件到 nginx/conf/ 即在 /usr/local/nginx/conf/
nginx 的 nginx.conf 文件配置如下
#user ?nobody;worker_processes ?1;#error_log ?logs/error.log;#error_log ?logs/error.log ?notice;#error_log ?logs/error.log ?info;#pid ???????logs/nginx.pid;events { ???worker_connections ?1024;}http { ???include ??????mime.types; ???default_type ?application/octet-stream; ???sendfile ???????on; ???keepalive_timeout ?65; ???upstream tomcats{ ????????server localhost:8080; ???} ???server{ ?????listen ???80; ?????server_name ?blog.zousiliang.com; ?????return 301 ??https://$server_name$request_uri; ???} ???server { ???????listen 443 ssl; ???????server_name blog.zousiliang.com; ???????ssl on; ???????ssl_certificate 1_blog.zousiliang.com_bundle.crt; ???????ssl_certificate_key 2_blog.zousiliang.com.key; ???????ssl_session_timeout 5m; ???????ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ???????ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE; ???????ssl_prefer_server_ciphers on; ???????location / { ???????????proxy_pass ??http://tomcats$request_uri; ???????????proxy_set_header ?Host $host:$server_port; ???????????proxy_set_header ?X-Real-IP ?$remote_addr; ???????????proxy_set_header X-Forwarded-Proto https; ????????????client_max_body_size ?10m; ???????} ???}}
tomcat service.xml 文件中配置如下
<Connector port="8080" protocol="HTTP/1.1" ???????????????connectionTimeout="20000" ???????????????redirectPort="443" ???????????????proxyPort="443" ???????????????URIEncoding="UTF-8" /><Host name="localhost" ?appBase="webapps" ???????????unpackWARs="true" autoDeploy="true"> ???<Valve className="org.apache.catalina.valves.RemoteIpValve" ???????????remoteIpHeader="x-forwarded-for" ???????????remoteIpProxiesHeader="x-forwarded-by" ???????????protocolHeader="x-forwarded-proto" directory="logs" ???????????prefix="localhost_access_log." suffix=".txt" ???????????pattern="%h %l %u %t "%r" %s %b" ?????????/></Host>
三. 验证配置
访问 http://blog.zousiliang.com 或者 https://blog.zousiliang.com 出现如下效果表示配置成功
转自:https://hacpai.com/article/1525254970376
把网站从 http 转换成 https
原文地址:https://www.cnblogs.com/alter888/p/9450984.html