使用Nginx配置Https域名证书

使用Nginx配置Https域名证书

  1. 安装SSL模块

    要在nginx中配置https,就必须安装ssl模块,也就是: http_ssl_module

  • 进入到nginx的解压目录: /home/software/nginx-1.16.1

  • 新增ssl模块(原来的那些模块需要保留)

    ./configure \
    --prefix=/usr/local/nginx \
    --pid-path=/var/run/nginx/nginx.pid \
    --lock-path=/var/lock/nginx.lock \
    --error-log-path=/var/log/nginx/error.log \
    --http-log-path=/var/log/nginx/access.log \
    --with-http_gzip_static_module \
    --http-client-body-temp-path=/var/temp/nginx/client \
    --http-proxy-temp-path=/var/temp/nginx/proxy \
    --http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
    --http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
    --http-scgi-temp-path=/var/temp/nginx/scgi \
    --with-http_ssl_module
    
  • 编译和安装

    make
    make instal
    
  1. 配置Https

  • 把ssl证书 *.crt 和 私钥 *.key 拷贝到/usr/local/nginx/conf目录中。

  • 新增 server 监听 443 端口:

    server {
         #SSL 访问端口号为 443
         listen 443 ssl;
         #填写绑定证书的域名
         server_name www.domain.com;
         #证书文件名称
         ssl_certificate 1_www.domain.com_bundle.crt;
         #私钥文件名称
         ssl_certificate_key 2_www.domain.com.key;
         ssl_session_timeout 5m;
         #请按照以下协议配置
         ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
         #请按照以下套件配置,配置加密套件,写法遵循 openssl 标准。
         ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
         ssl_prefer_server_ciphers on;
         location / {
            #网站主页路径。此路径仅供参考,具体请您按照实际目录操作。
             root /var/www/www.domain.com;
             index  index.html index.htm;
         }
    }
    
    ./nginx -s reload
    

    云服务器的安全组已放通443端口,但配置完成后如果出现443端口监听不到,说明nginx并没有配置成功,有可能是因为之前安装过一遍nginx造成的,需要重新安装的nginx才可以。
    附:腾讯云Nginx配置https文档

你可能感兴趣的:(nginx)