Nginx 学习笔记个人网站的Https配置

Posted Tinywan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Nginx 学习笔记个人网站的Https配置相关的知识,希望对你有一定的参考价值。

一、系统环境

1、系统:Ubuntu 16.04.2 LTS

2、WEB服务器:Openresty11.2.5

二、开始配置

1、获取certbot客户端

wget https://dl.eff.org/certbot-auto
chmod a+x certbot-auto

2、停止nginx服务

sudo systemctl stop nginx.service

3、生成证书

./certbot-auto certonly --standalone --email `你的邮箱地址` -d `你的域名地址`

当前网站有多个域名时需在后面增加,例如:

./certbot-auto certonly --standalone --email `你的邮箱地址` -d `你的域名1` -d `你的域名2`

4、查看生产的证书

tree /etc/letsencrypt/live/
[email protected]:~$ sudo tree /etc/letsencrypt/live/
/etc/letsencrypt/live/
└── www.tinywan.top
    ├── cert.pem -> ../../archive/www.tinywan.top/cert1.pem
    ├── chain.pem -> ../../archive/www.tinywan.top/chain1.pem
    ├── fullchain.pem -> ../../archive/www.tinywan.top/fullchain1.pem
    ├── privkey.pem -> ../../archive/www.tinywan.top/privkey1.pem
    └── README

1 directory, 5 files

5、编辑Nginx配置文件和开启SSL服务

sudo vim /usr/local/openresty/nginx/conf/nginx.conf

配置虚拟主机

...
  # 配置HTTP请求重定向 server { listen
80; server_name www.tinywan.top; rewrite ^ https://$http_host$request_uri? permanent; # force redirect http to https }
# 配置SSL证书 server { listen
443 ssl;
     server_name www.tinywan.top;
        ssl_certificate /etc/letsencrypt/live/www.tinywan.top/fullchain.pem; 
ssl_certificate_key
/etc/letsencrypt/live/www.tinywan.top//privkey.pem;
     #禁止在header中出现服务器版本,防止黑客利用版本漏洞攻击    
     server_tokens off;
set $root_path /home/www/web/golang; root $root_path; location / { if (!-e $request_filename) { rewrite ^(.*)$ /index.php?s=/$1 last; break; } } } ...

6、重启Nginx服务

sudo systemctl restart nginx.service

 7、Let’s Encrypt 生成的免费证书为3个月时间,使用Crontab可以无限次续签证书

# 每星期1的2点30分执行更新操作
 30 2 * * 1 /home/www/bin/certbot-auto renew  >>/home/www/bin/logs/encrypt_auto_update.log  2>&1

 

以上是关于Nginx 学习笔记个人网站的Https配置的主要内容,如果未能解决你的问题,请参考以下文章

学习笔记--HIVE网站日志统计分析

linux学习笔记——搭建基于nginx的web服务器多核配置nginx配置参数

Nginx学习笔记03虚拟机与代理

Nginx学习笔记之加强篇

Nginx运行原理和配置详解(个人总结笔记)

Nginx 学习笔记