Skip to content

腾讯云免费ssl证书配置及nginx反向代理配置

  • nginx配置文件目录:vim /etc/nginx/nginx.conf
shell
server {
    listen       443; # 监听443端口,https的默认端口
    server_name  chaoszhu.com; # 这里是申请证书所用到的域名
    ssl on;
    ssl_certificate 1_chaoszhu.com_bundle.crt;# 证书文件名称
    ssl_certificate_key 2_chaoszhu.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;
    root         /usr/share/nginx/html;
    gzip on; # 开启gzip压缩,可以大幅度优化前端页面打开速度
    client_max_body_size  50m; # 设置上传的压缩文件大小,不设置有可能会报413 Request Entity Too Large的错误
    # 以下为压缩的类型,更多文件类型压缩自行百度
    gzip_types text/plain application/javascript application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png image/x-icon;
    # Load configuration files for the default server block.
    include /etc/nginx/default.d/*.conf;

    # WebSocket 配置,此段与反向代理可忽略
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection $connection_upgrade;

    # location / {
    # 微信小程序反向代理
    #       proxy_pass http://127.0.0.1:8765;
    # }

    # 返回代理只需要配置location字段即可,非常简单。
    # 注意:规则很重要,写错了就反向代理失败
    location /api/ {
    # 移动端项目反向代理
            proxy_pass https://127.0.0.1:3000/; # 最后的斜杠不能少,否则路由不到,代理失败
    }

    error_page 404 /404.html;
        location = /40x.html {
    }

    error_page 500 502 503 504 /50x.html;
        location = /50x.html {
    }
}

# 以下这个server可以让用户自动跳转到https协议下的域名
server {
    listen 80;
    server_name chaoszhu.com; #填写绑定证书的域名
    rewrite ^(.*)$ https://$host$1 permanent; #把http的域名请求转成https
}