国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

nginx配置ssl支持https的詳細步驟

這篇具有很好參考價值的文章主要介紹了nginx配置ssl支持https的詳細步驟。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

nginx配置ssl支持https的詳細步驟

文章概要:在建站的時候我們通常要讓網站通過https進行訪問,不然使用http過程中,所有信息都是未加密的,并且用戶訪問的時候瀏覽器會屏蔽我們的網站。本文介紹如何通過nginx配置ssl以支持通過https協(xié)議訪問網站。

本文內容來自:谷流倉AI - ai.guliucang.com

一、修改nginx配置文件

  1. 打開nginx.conf配置文件,修改需要添加支持ssl的server塊,比如
http {
	server {
        listen       443 ssl; # https默認為443端口,當然也可以用任何端口。后面ssl用于告訴Nginx在指定的端口上啟用SSL/TLS加密
        server_name  example.com; # 你網站的域名
        
        # 下面輸入證書和私鑰的地址(詳細解釋看下文的注釋1)
        ssl_certificate      certs/my_cert.crt; # 證書(查看注釋2)
        ssl_certificate_key  certs/my_cert.key; # 證書對應的私鑰文件(查看注釋3)
        
        ssl_session_cache    shared:SSL:1m; # 可選配置,設置了 SSL 會話緩存的類型和大小。(具體查看注釋5)
        ssl_session_timeout  5m; # 可選配置,設置了 SSL 會話緩存的超時時間為 5 分鐘。

        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; # 可選配置, 指定了 SSL/TLS 握手過程中允許使用的加密算法的優(yōu)先級順序。(具體查看注釋7)
        ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3; # 可選配置,指定了允許使用的 SSL/TLS 協(xié)議版本。(具體查看注釋8)
        ssl_prefer_server_ciphers  on; # 可選配置(具體查看注釋9)

	}

}

  1. 修改保存了上面的配置文件之后,使用nginx -t驗證一下配置文件是否正確配置。
  2. 提示syntax ok之后,就可以用nginx -s reload重載配置,使配置立即生效。

二、驗證

通過https訪問上面配置好的網站,可以在瀏覽器地址欄左側的鎖圖標點開看看是否顯示證書是安全的了。

三、(可選)HTTP重定向到HTTPS

如果希望將所有HTTP請求重定向到HTTPS,可以添加以下配置:

server {
    listen 80;
    server_name example.com;
    return 301 https://$server_name$request_uri;
}

保存修改之后,nginx -s reload重載配置文件即可。

相關注釋

  1. ssl證書

    • 有免費的有也收費的,沒錢的用免費的就行了, 比如Let’s Encrypt。
    • 如何下載證書?
      • 可以去阿里云的數字證書頁面獲取,可以申請20個免費的DigitCert證書
      • Let’s Encrypt的可以安裝certbot自動化下載證書還可以自動續(xù)期
    • Let’s Encrypt如何通過certbot下載證書?
      1. centos中通過yum安裝certbot:yum install certbot -y

      2. 簽發(fā)下載泛域名證書*.example.com(這樣所有子域名也可以用): certbot certonly -d "*.example.com" -d example.com --manual --preferred-challenges dns-01 --server https://acme-v02.api.letsencrypt.org/directory, 其中--preferred-challenges dns-01表示通過dns的方式驗證自己對網站的所有權。比如我的域名解析服務是阿里云提供的,按照certbot的要求,去阿里云的云解析界面添加一個指定的TXT類域名解析就行了。

      3. 簽發(fā)成功后給出如下提示

        		 Congratulations! Your certificate and chain have been saved at:
           /etc/letsencrypt/live/example.com/fullchain.pem
           Your key file has been saved at:
           /etc/letsencrypt/live/example.com/privkey.pem
           Your certificate will expire on 2024-06-16. To obtain a new or
           tweaked version of this certificate in the future, simply run
           certbot again. To non-interactively renew *all* of your
           certificates, run "certbot renew"
        
      4. 之后快要過期之前通過certbot renew即可簽發(fā)新的證書。

    • 證書有效期?
      • 免費的證書目前一般只有3個月有效期,到期之前需要重新簽發(fā)新的證書
    • 證書還沒過期,直接新申請一個證書,舊的證書會立即失效嗎?
      • 不會。舊證書的過期時間是固定的,不會因為申請了新證書而提前失效。除非你直接把舊的證書從服務器上刪掉了。
      • 可以在在過期前提前申請好一個新的證書,新的證書不會影響舊的證書。然后過期前把新的證書放到服務器替換掉舊的證書,并nginx -s reload重載配置就行了。
  2. 關于ssl_certificate

    • 證書文件包含服務器的公鑰、服務器信息以及證書頒發(fā)機構(CA)的數字簽名。
    • 證書文件用于向客戶端證明服務器的身份,并提供服務器的公鑰。
    • 可以是.pem格式的文件,也可以是.crt格式的文件(詳情查看注釋4)
  3. 關于ssl_certificate_key

    • 私鑰文件包含與證書文件中公鑰相對應的私鑰。
    • 私鑰用于對數據進行解密和簽名操作,必須嚴格保密。
    • 可以是.pem格式的文件,也可以是.key格式的文件
  4. pem文件和crt文件有啥區(qū)別,都能用嗎?

    • SSL證書的PEM和CRT格式都是用于存儲SSL/TLS證書的文件格式,它們之間有一些區(qū)別,但在大多數情況下可以互換使用。
    • PEM(Privacy Enhanced Mail)格式是一種基于Base64編碼的文件格式,以 -----BEGIN CERTIFICATE----- 開頭,以 -----END CERTIFICATE----- 結尾。PEM文件可以包含證書、私鑰或者公鑰。PEM格式的文件可以用于存儲SSL/TLS證書、私鑰和公鑰。
    • CRT(Certificate)格式與PEM格式類似,也是基于Base64編碼,但通常只包含證書本身,不包含私鑰。CRT格式的文件通常只用于存儲SSL/TLS證書。
    • 如果你有一個包含證書和私鑰的PEM文件,可以直接在Nginx配置中使用該文件。以Let’s Encrypt簽發(fā)的證書為例,ssl_certificate填/path/to/fullchain.pem和ssl_certificate_key填對應私鑰地址/path/to/privkey.pem
    • 如果你有單獨的CRT證書文件和私鑰文件,需要在Nginx配置中分別指定證書文件和私鑰文件的路徑。
  5. ssl_session_cache

    • 這個配置設置了 SSL 會話緩存的類型和大小。
    • shared 表示在所有工作進程之間共享緩存。
    • SSL 是緩存的名稱。
    • 1m 表示緩存的最大大小為 1 兆字節(jié)。
    • 啟用 SSL 會話緩存可以提高性能,因為它允許客戶端在后續(xù)連接中重用之前協(xié)商的會話參數,避免了重新進行完整的 SSL/TLS 握手過程。
  6. ssl_session_timeout

    • 這個配置設置了 SSL 會話緩存的超時時間為 5 分鐘。
  7. ssl_ciphers

    • 這個配置指定了 SSL/TLS 握手過程中允許使用的加密算法的優(yōu)先級順序。
    • 它使用了一個加密算法的列表,按照優(yōu)先級從高到低排列。
    • 建議使用安全性較高的加密算法,并禁用一些不安全的算法(如 NULL、aNULL、MD5、ADH、RC4 等)。
  8. ssl_protocols

    • 指定了允許使用的 SSL/TLS 協(xié)議版本。
    • 建議只啟用安全的協(xié)議版本,如 TLSv1.1、TLSv1.2 和 TLSv1.3,禁用不安全的 SSL v2 和 SSL v3。
  9. ssl_prefer_server_ciphers

    • 這個配置指定了在 SSL/TLS 握手過程中,優(yōu)先使用服務器端指定的加密算法,而不是客戶端提供的加密算法。
    • 這樣可以確保使用更安全的加密算法。
  10. 同一個域名不同端口,可以用同一個SSL證書嗎?

    • 可以。SSL證書是基于域名頒發(fā)的,而不是基于端口號。
    • 例如,假設你有一個域名為example.com的網站,并且你在nginx.conf中配置了多個服務器塊,分別監(jiān)聽不同的端口:
server {
    listen 443 ssl;
    server_name example.com;
    ssl_certificate /path/to/certificate.crt;
    ssl_certificate_key /path/to/private.key;
    ...
}

server {
    listen 8443 ssl;
    server_name example.com;
    ssl_certificate /path/to/certificate.crt;
    ssl_certificate_key /path/to/private.key;
    ...
}

在上面的示例中,兩個服務器塊都使用相同的SSL證書(certificate.crt)和私鑰(private.key),盡管它們監(jiān)聽不同的端口(443和8443)。

當客戶端通過不同的端口訪問你的網站時,例如https://example.com或https://example.com:8443,Nginx將使用相同的SSL證書來建立安全連接,因為證書是基于域名example.com頒發(fā)的。文章來源地址http://www.zghlxwxcb.cn/news/detail-844091.html

到了這里,關于nginx配置ssl支持https的詳細步驟的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

本文來自互聯(lián)網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • nginx配置SSL證書配置https訪問網站 超詳細(附加配置源碼+圖文配置教程)

    最近在阿里云上入手了一臺云服務器,準備搭建一套java程序,在 Nginx 配置SSL證書時,配上之后前端可以正常以https的方式打開,但是訪問不到后端,自己也是明明知道是 Niginx 配置的問題,但就不知道錯哪了,當時心里的那種感覺真是無法表達嗚嗚嗚… 經過排查發(fā)現 前端訪

    2024年02月11日
    瀏覽(23)
  • nginx配置https后報錯nginx: [emerg] https protocol requires SSL support in XXX.conf詳細解決方法

    最近,在測試環(huán)境的nginx里增加了一個 https 配置: 然后,執(zhí)行命令: 結果,nginx就報錯了: 百度發(fā)現,是之前安裝nginx時沒有安裝ssl模塊,需要重新安裝一個nginx。步驟如下: 1.下載好nginx安裝包,例如 nginx-1.17.2.tar.gz 2.查看下目前nginx使用的配置是什么: 發(fā)現,確實沒有ss

    2023年04月08日
    瀏覽(20)
  • 將SSL證書設置成HTTPS的詳細步驟

    在互聯(lián)網上建立一個安全且可信任的網站,HTTPS是一種常用的解決方案。HTTPS是HTTP的安全版本,通過使用SSL/TLS協(xié)議對傳輸的數據進行加密,確保數據傳輸的安全性。要實現HTTPS,你需要將SSL證書設置到你的網站上。以下是詳細的步驟: 獲取SSL證書:你需要獲取SSL證書。你可以

    2024年02月09日
    瀏覽(23)
  • 配置https---Nginx認證ssl證書

    配置https---Nginx認證ssl證書

    nginx作為前端的負載均衡服務器已經很熟悉了,項目需要使用https安全的時候就需要認證證書了 dockerweb管理工具 Portainer 如果對docker不那么熟悉可以使用docker 第三方管理端 然后訪問本地9000端口,登錄后可以管理容器鏡像 有了該工具可以直接進入容器查看日志等操作 nginx環(huán)境安裝

    2024年01月19日
    瀏覽(26)
  • LaravelS 項目配置ssl 支持https 訪問

    ####laravalS 配置ssl 請求支持https nginx: [emerg] no “ssl_certificate” is defined for the “l(fā)isten … ssl” directive in /www/server/panel/vhost/nginx/im.17epk.com.conf:14 配置 1、 listen 443 ssl http2; 2.、 #SSL-START SSL相關配置,請勿刪除或修改下一行帶注釋的404規(guī)則 #error_page 404/404.html; ssl_certificate /www/server/

    2024年02月15日
    瀏覽(23)
  • nginx配置ssl證書使用https訪問

    nginx配置ssl證書使用https訪問

    一:申請證書,我使用的是阿里云免費證書 二:下載證書,解壓到服務器上 兩個文件:www.xx.com.pem和www.xx.com.key 三:打開配置文件/usr/local/nginx/conf/nginx.conf 放開端口443,替換ssl_certificate和ssl_certificate_key為自己證書路徑 ? ?server { ? ? ? ? listen ? ? ? 443 ssl; ? ? ? ? server_na

    2024年01月20日
    瀏覽(33)
  • 在nginx中部署https服務,詳細步驟

    在nginx中部署https服務,詳細步驟

    目錄 前言 一、https是什么? 二、部署步驟 1.下載SSL證書 2.上傳文件 3.解壓文件 4.在nginx.conf配置文件中,修改https服務 5.修改hosts文件 6.http跳轉到https中 三、注意事項 Web服務器一般指網站服務器,可以處理瀏覽器等Web客戶端的請求并返回相應響應,也可以放置網站文件,讓全

    2024年02月13日
    瀏覽(19)
  • Nginx配置ssl證書實現https安全訪問

    Nginx配置ssl證書實現https安全訪問

    目錄 一、Nginx的安裝與配置 安裝步驟 二、SSL證書獲取 三、Nginx配置 前題條件,擁有服務器與可以解析到該服務器的自己的域名。 若已安裝好了Nginx,則需查看自己的Nginx是否開啟了SSL的模塊功能: ?顯示如上,則代表ssl功能已開啟,否則可能出現以下錯誤提示: nginx: [emer

    2024年02月15日
    瀏覽(29)
  • 配置SSL證書后,Nginx的HTTPS 不能正常

    申請ssl證書,配置nginx支持https與證書,可是訪問https的nginx總是出現錯誤,也導致小程序發(fā)https請求失敗,這是什么原因呢? 如果在配置SSL證書后,Nginx的HTTPS無法正常工作,可能有以下幾個常見原因: 1、證書配置錯誤: 證書文件路徑出現錯誤或不存在;文件格式錯誤;證書

    2024年02月03日
    瀏覽(28)
  • Nginx 配置SSL,開放https協(xié)議和443端口

    Nginx 配置SSL,開放https協(xié)議和443端口

    目錄 一、準備工作 二、生成私鑰(key) 三、生成證書簽名請求/公鑰(csr) 四、生成證書(crt) 五、給nginx配證書 六、訪問測試 閱讀本文前您需要學會如何安裝Nginx,?如果您還不會安裝Nginx請參考CentOS7安裝Nginx,或者直接關注本欄目Nginx。 ????????如果是在Windows下,請

    2024年02月04日
    瀏覽(50)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包