nginx添加ssl证书

ssl的证书是通过docker nginx letsencrypt 这篇随笔生成的,下面介绍如何在nginx中添加ssl

这个为全部配置, 需要替换你自己的域名,配置中强制https了

server {
    listen          80;
    server_name  xxx.cn www.xxx.cn;
    return    301   https://$host$request_uri;
}

server {
    listen 443 ssl;
    server_name xxx.cn www.xxx.cn; #填写绑定证书的域名

    ssl_certificate        /etc/letsencrypt/live/xxx.cn/fullchain.pem;
    ssl_certificate_key    /etc/letsencrypt/live/xxx.cn/privkey.pem;
    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;

    charset utf-8;
    access_log  /var/log/nginx/xxx.access.log  main;
    error_log /var/log/nginx/xxx.error.log warn;

    #对 / 所有做负载均衡+反向代理
    location / {
        proxy_pass http://127.0.0.1:83;
    }

    #静态文件,nginx自己处理,不去backend请求
    location /media  {
       alias /data/xxx/media;
    }
    location /static {
        alias /data/xxx/static;
    }
location
~ /.well-known{ # https证书自动更新 proxy_pass http://127.0.0.1:88; # certon自动更新接口 } }
    ssl_certificate        /etc/letsencrypt/live/xxx.cn/fullchain.pem;
    ssl_certificate_key    /etc/letsencrypt/live/xxx.cn/privkey.pem;
是证书的绝对路径。


另外附上nginx的docker-compose配置
version: '3'

services:
  web:
    image: nginx
    container_name: nginx.web
    restart: always
    volumes:
      - ./nginx.conf:/etc/nginx/nginx.conf
      - ./log/nginx:/var/log/nginx
      - ./conf.d:/etc/nginx/conf.d
      - ./ssl:/etc/letsencrypt:ro
    ports:
      - "80:80"
      - "443:443"
    network_mode: "host"

 

转载于:https://www.cnblogs.com/duoxuan/p/10573700.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值