1. 程式人生 > 實用技巧 >Nginx配置SSL證書提供https訪問

Nginx配置SSL證書提供https訪問

1. 安裝SSL模組

要在 Nginx 中配置https,就必須安裝ssl模組,也就是:http_ssl_module

  • 進入到 Nginx 的解壓目錄:xxx/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 install

2. 配置HTTPS

把SSL證書.crt和私鑰.key拷貝到某個目錄,如/usr/local/nginx/conf目錄中
新增server監聽443埠

server {
    listen      443;
    server_name     www.supergan.cn;

    # 開啟ssl
    ssl     on;
    # 配置ssl證書
    ssl_certificate     1_www.supergan.cn.crt;
    # 配置證書祕鑰
    ssl_certificate_key 2_www.supergan.cn.key;

    # ssl會話cache
    ssl_session_cache   shared:SSL:1m;
    # ssl會話超時時間
    ssl_session_timeout 5m;

    # 配置加密套件,寫法遵循 openssl 標準
    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/;
    }
}