麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 網站 > Nginx > 正文

Nginx配置多個HTTPS域名的方法

2024-08-30 12:29:01
字體:
來源:轉載
供稿:網友

最近在玩微信小程序,手頭有:

  1. 一臺云服務器:CentOS 7
  2. 多個一級域名

開發測試過程中,因為某些原因,想要讓手頭的A、B域名同時指向云服務器的443端口,支持HTTPS。

Nginx支持TLS協議的SNI擴展(同一個IP上可以支持多個不同證書的域名),只需要重新安裝Nginx,使其支持TLS即可。

安裝Nginx

[root]# wget http://nginx.org/download/nginx-1.12.0.tar.gz[root]# tar zxvf nginx-1.12.0.tar.gz[root]# cd nginx-1.12.0[root]# ./configure --prefix=/usr/local/nginx --with-http_ssl_module /--with-openssl=./openssl-1.0.1e /--with-openssl-opt="enable-tlsext"

備注:在安裝的過程中發現,云服務器的環境中缺少一些庫,下載后,重新執行Nginx的./configure指令,具體操作如下:

[root]# wget https://nchc.dl.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz[root]# tar zxvf pcre-8.35[root]# yum -y install gcc[root]# yum -y install gcc-c++[root]# yum install -y zlib-devel[root]# ./configure --prefix=/usr/local/nginx --with-http_ssl_module /--with-openssl=./openssl-1.0.1e /--with-openssl-opt="enable-tlsext" /--with-pcre=./pcre-8.35

配置Nginx

在購買域名的時候,如果域名提供商有免費的SSL證書,就直接用;如果沒有的話,可以使用 Let's Encript 生成免費的CA證書。

打開Nginx的配置:vi /etc/nginx/nginx.conf

  ...  server {    listen    443 ssl;    listen    [::]:443 ssl;    server_name abc.com;    root     /usr/share/nginx/html;    ssl_certificate "/root/keys/abc.com.pem";    ssl_certificate_key "/root/keys/abc.com.private.pem";    include /etc/nginx/default.d/*.conf;    location / {    }    error_page 404 /404.html;      location = /40x.html {    }    error_page 500 502 503 504 /50x.html;      location = /50x.html {    }  }  server {    listen    443 ssl;    listen    [::]:443 ssl;    server_name def.com;    root     /usr/share/nginx/html;    ssl_certificate "/root/keys/def.com.pem";    ssl_certificate_key "/root/keys/def.com.private.pem";    include /etc/nginx/default.d/*.conf;    location / {    }    error_page 404 /404.html;      location = /40x.html {    }    error_page 500 502 503 504 /50x.html;      location = /50x.html {    }  }

配置完成后,重新加載Ngixn:nginx -s reload

申請免費的CA證書

對于沒有SSL證書的情況,可以用下面的方法免費獲得CA證書——Let's Encript。

步驟1: 安裝 Let's Encrypt 官方客戶端——CetBot

[root]# yum install -y epel-releasesudo [root]# yum install -y certbot

步驟2: 配置Nginx的配置文件,在 Server 模塊(監聽80端口的)添加下面配置:

CertBot在驗證服務器域名的時候,會生成一個隨機文件,然后CertBot的服務器會通過HTTP訪問你的這個文件,因此要確保你的Nginx配置好,以便可以訪問到這個文件。

server {   listen    80 default_server;   ...  location ^~ /.well-known/acme-challenge/ {      default_type "text/plain";      root   /usr/share/nginx/html;  }  location = /.well-known/acme-challenge/ {      return 404;  }}

重新加載Nginx: nginx -s reload

步驟3: 申請SSL證書

[root]# certbot certonly --webroot -w /usr/share/nginx/html/ -d your.domain.com

安裝過程中,會提示輸入郵箱,用于更新CA證書的。

安裝成功后,默認會在 /etc/letsencrypt/live/your.domain.com/ 會生成CA證書。

|-- fullchain.pem |-- privkey.pem

步驟4: 配置Nginx

server {  listen    443 ssl;  listen    [::]:443 ssl;  server_name def.com;  root     /usr/share/nginx/html;  ssl_certificate "/etc/letsencrypt/live/your.domain.com/fullchain.pem";  ssl_certificate_key "/etc/letsencrypt/live/your.domain.com/privkey.pem";  include /etc/nginx/default.d/*.conf;  location / {  }  error_page 404 /404.html;    location = /40x.html {  }  error_page 500 502 503 504 /50x.html;    location = /50x.html {  }}

配置完,重新加載Nginx

步驟5: 自動更新證書

在命令行先進行模擬更新證書

certbot renew --dry-run

如果模擬更新成功,則 使用 crontab -e 命令來啟用自動更新任務:

[root]# crontab -e30 2 * * 1 /usr/bin/certbot renew >> /var/log/le-renew.log

相關參考

  1. Let's Encript
  2. Nginx下載連接 
  3. crontab

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 午夜视频国产 | 一级黄色影片在线观看 | 在线播放视频一区二区 | 中文字幕网站在线 | 国产69精品久久久久99尤 | 欧美女优一区 | 国产精品久久久久久久不卡 | 亚洲成人久久精品 | 黑人一区二区 | 日本aaaa片毛片免费观看视频 | 九九精品在线观看视频 | 久久久久久免费免费 | 日韩视频在线观看免费视频 | 国产精品久久久久久久模特 | 狠狠干夜夜操 | 久久久久久久久久久av | 毛片免费视频观看 | 日本黄色免费播放 | 亚洲精品欧美二区三区中文字幕 | 羞羞视频免费观看入口 | 国产免费久久久久 | 在线看免费观看av | 男女隐私免费视频 | 99精品欧美一区二区 | 在线看日本 | 欧美 国产 亚洲 卡通 综合 | 欧美精品18| 一级在线免费观看视频 | 国产免费一级大片 | 中文字幕电影免费播放 | 伊人在线| 亚洲一区二区三区在线看 | 天天草夜夜骑 | 超碰97在线人人 | 久久99国产精品视频 | asian gaysex| 草莓福利视频在线观看 | 免费在线观看成年人视频 | 黄色视频a级毛片 | 国产视频在线观看免费 | 毛片免费视频观看 |