溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Nginx下升級https的方法步驟

發(fā)布時間:2020-10-14 15:34:53 來源:腳本之家 閱讀:142 作者:Hzzly 欄目:服務(wù)器

購買證書

可以去阿里云的云盾證書服務(wù)購買

下載證書

在證書控制臺下載 Nginx 版本證書。下載到本地的壓縮文件包解壓后包含:

  • .pem 文件:證書文件
  • .key 文件:證書的私鑰文件(申請證書時如果沒有選擇 自動創(chuàng)建CSR ,則沒有該文件)

配置Nginx

1、在 Nginx 的安裝目錄下創(chuàng)建 cert 目錄,并且將下載的全部文件拷貝到 cert 目錄中,如果申請證書時是自己創(chuàng)建的CSR文件,請將對應(yīng)的私鑰文件放到 cert 目錄下。

2、打開 Nginx 安裝目錄下 conf 目錄中的 nginx.conf 文件

#user nobody;
worker_processes 1;

#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;

#pid    logs/nginx.pid;

events {
  worker_connections 1024;
}

http {
  include    mime.types;
  default_type application/octet-stream;

  #log_format main '$remote_addr - $remote_user [$time_local] "$request" '
  #         '$status $body_bytes_sent "$http_referer" '
  #         '"$http_user_agent" "$http_x_forwarded_for"';

  #access_log logs/access.log main;

  sendfile    on;
  #tcp_nopush   on;

  #keepalive_timeout 0;
  keepalive_timeout 65;

  gzip on;  #開啟gzip
  gzip_min_length 1k; #低于1kb的資源不壓縮
  gzip_comp_level 3; #壓縮級別【1-9】,越大壓縮率越高,同時消耗cpu資源也越多,建議設(shè)置在4左右。
  gzip_types text/plain application/javascript application/x-javascript text/javascript text/xml text/css; #需要壓縮哪些響應(yīng)類型的資源,多個空格隔開。不建議壓縮圖片,下面會講為什么。
  gzip_disable "MSIE [1-6]\."; #配置禁用gzip條件,支持正則。此處表示ie6及以下不啟用gzip(因為ie低版本不支持)
  gzip_vary on; #是否添加“Vary: Accept-Encoding”響應(yīng)頭

  server {
    listen    80 default backlog=2048; #配置http可用
    listen    443 ssl; #配置https
    server_name localhost;

    ssl_certificate   ../cert/hzzly.pem; #配置證書文件
    ssl_certificate_key ../cert/hzzly.key; #配置私鑰文件

    ssl_session_cache  shared:SSL:1m;
    ssl_session_timeout 5m;

    ssl_ciphers HIGH:!aNULL:!MD5;
    ssl_prefer_server_ciphers on;

    location / {
      root  /home/hzzly;
      index index.html index.htm;
    }

    # location ^~ /apis/ {
    #   proxy_set_header Host $host;
    #   proxy_set_header X-Real-IP $remote_addr;
    #   proxy_set_header X-Forwarded-Server $host;
    #   # 匹配任何以 /apis/ 開始的請求,并停止匹配 其它location
    #   proxy_pass http://xxxxxxxxxx/;
    # }

    # location ^~ /assets/ {
    #   gzip_static on;
    #   expires max;
    #   add_header Cache-Control public;
    # }
  }
}

3、重啟 Nginx

$ cd /usr/local/nginx/sbin
$ ./nginx -s reload

錯誤詳解

1、Nginx如果未開啟SSL模塊,配置Https時提示錯誤

nginx: [emerg] the "ssl" parameter requires ngx_http_ssl_module in ...

Nginx開啟SSL模塊

切換到源碼包:

$ cd /usr/local/src/nginx-1.16.0

修改新的configure參數(shù)

$ ./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module

配置完成后,運行命令

$ make //這里不要進行make install,否則就是覆蓋安裝

備份原有已安裝好的nginx

$ cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak

將剛剛編譯好的nginx覆蓋掉原有的nginx

$ cp ./objs/nginx /usr/local/nginx/sbin/

重啟 Nginx

$ cd /usr/local/nginx/sbin
$ ./nginx -s reload

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持億速云。

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI