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

Nginx 下將 http 改為 https

這篇具有很好參考價(jià)值的文章主要介紹了Nginx 下將 http 改為 https。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

將服務(wù)從 HTTP 變?yōu)?HTTPS,需要進(jìn)行 SSL 證書的配置。需要完成一下步驟:

  1. 獲取 SSL 證書
  2. 安裝 SSL 證書
  3. 配置 Nginx 支持 HTTPS
  4. 重啟 Nginx
  5. HTTPHTTPS 的重定向(可選)

1. 獲取 SSL 證書(自簽名證書)

對(duì)于 SSL/TLS 證書,一般來(lái)說(shuō),它們是基于 域名 進(jìn)行頒發(fā)的,而不是 IP地址。這是因?yàn)?SSL/TLS 證書是用來(lái)驗(yàn)證服務(wù)器身份和提供一個(gè)安全的連接通道的,它們需要關(guān)聯(lián)到一個(gè)被認(rèn)可的域名以確保服務(wù)器的真實(shí)性。

如果你沒(méi)有 域名,但是你的應(yīng)用又需要使用 HTTPS,那么以下幾種方式或許可以考慮:

  1. 購(gòu)買一個(gè)域名:
    域名現(xiàn)在相當(dāng)便宜,你可以購(gòu)買一個(gè),并將其解析到你的 IP 地址。
  2. 自簽名證書:
    可以創(chuàng)建自己的自簽名證書。但是,用戶的瀏覽器會(huì)顯示一個(gè)警告,提示他們證書不受信任。這可能不適合面向公眾的應(yīng)用程序,但對(duì)于測(cè)試或內(nèi)部使用的服務(wù)來(lái)說(shuō),這是一個(gè)可行的選擇。
  3. 使用 CloudFlare
    CloudFlare 是一個(gè)內(nèi)容分發(fā)網(wǎng)絡(luò)(CDN)和 DNS 提供商,它提供免費(fèi)的 SSL 證書,即使你沒(méi)有域名也可以使用。但是,這需要將你的流量通過(guò)他們的網(wǎng)絡(luò),可能并不適合所有應(yīng)用。

1.1. 安裝 openssl

// 更新 apt-get 下載源節(jié)點(diǎn)
sudo apt-get update

// 查看當(dāng)前 apt-get 下載源節(jié)點(diǎn)里 libssl-dev 可下載安裝的所有版本和默認(rèn)的最合適的版本
sudo apt-cache policy libssl-dev

// 下載并默認(rèn)安裝 libssl-dev(默認(rèn)的版本)
sudo apt-get install libssl-dev

// 如果要指定安裝某個(gè)版本
//sudo apt-get install libssl-dev=版本號(hào)

1.2. 自簽名證書

使用 OpenSSL 工具來(lái)創(chuàng)建自己的自簽名證書

  1. 生成私鑰
    打開命令行,然后輸入以下命令來(lái)生成一個(gè)新的 RSA 私鑰:openssl genrsa -out server.key 2048,將在當(dāng)前目錄下生成一個(gè)名為 server.key 的 2048 位私鑰文件。
  2. 生成證書簽名請(qǐng)求(CSR)
    使用此命令生成 CSR(Certificate Signing Request):openssl req -new -key server.key -out server.csr,會(huì)提示輸入很多東西,一直按 enter 即可
  3. 生成自簽名證書
    最后,使用以下命令生成自簽名證書:openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt,這將生成一個(gè)有效期為一年的自簽名證書 server.crt。

1.3. 嘗試在 flask 應(yīng)用中使用

from flask import Flask


app = Flask(__name__)


@app.route("/")
def index():
    return "Hello World"


if __name__ == "__main__":
    app.run(ssl_context=('server.crt', 'server.key'), host='0.0.0.0', port=8080)
    #app.run(host='0.0.0.0', port=8080)

這樣,F(xiàn)lask 服務(wù)器就會(huì)在 HTTPS 上運(yùn)行了。但是,請(qǐng)注意,因?yàn)槭褂玫氖亲院灻C書,所以瀏覽器將警告用戶這個(gè)連接不安全(因?yàn)樽C書不是由受信任的證書頒發(fā)機(jī)構(gòu)簽署的)。對(duì)于公開服務(wù),應(yīng)該考慮獲得一個(gè)由公認(rèn)的 CA 簽署的證書。

  • 直接在 flask 中使用 ssl 證書的示意圖:
    Nginx 下將 http 改為 https
    Nginx 下將 http 改為 https

2. 安裝 SSL 證書

將上面生成的 SSL 證書文件放置到位于 /etc/nginx/ssl/ 目錄中。確保已經(jīng)擁有了服務(wù)器私鑰(server.key)和證書文件(server.crtserver.crt)。

3. 配置 Nginx 支持 HTTPS

3.1. 打開 Nginx 配置文件

Nginx 的配置文件通常位于 /etc/nginx/ 目錄下,具體取決于你的系統(tǒng)和 Nginx 安裝方式。大部分情況下,站點(diǎn)特定的配置在 /etc/nginx/sites-available/ 中。

3.2. 修改或增加一個(gè)server塊

/etc/nginx/sites-available/default 配置文件中,將文件中的內(nèi)容全部替換為下面的 server 模塊(或者新建一個(gè)使用 SSL 的 server 塊),內(nèi)容如下:

server {
    listen 443 ssl;
    server_name _;
    # server_name your-domain.com;                  # 沒(méi)有域名則直接寫一個(gè)下劃線即可

    ssl_certificate /etc/nginx/ssl/server.crt;      # 修改為證書路徑
    ssl_certificate_key /etc/nginx/ssl/server.key;  # 修改為私鑰路徑

    location / {
        proxy_pass http://127.0.0.1:8080;           # 修改為 http 服務(wù)地址
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}
  • 替換 your-domain.com 為真實(shí)的域名,沒(méi)有域名則直接寫一個(gè)下劃線(_)即可。
  • listen 443 ssl 告訴 Nginx 在 443 端口上監(jiān)聽 SSL 連接。
  • ssl_certificatessl_certificate_key 指令分別指向你的證書文件和私鑰文件的實(shí)際路徑。

4. 重啟 Nginx

保存并關(guān)閉配置文件,然后運(yùn)行以下命令來(lái)檢查新的配置是否有語(yǔ)法錯(cuò)誤:

sudo nginx -t

如果這個(gè)命令沒(méi)有報(bào)錯(cuò),就可以安全地重啟 Nginx:

sudo systemctl restart nginx

nginx 重啟成功后,將可以在瀏覽器上通過(guò) https 訪問(wèn)服務(wù)器應(yīng)用了。由于使用的是自簽名證書,用戶的瀏覽器將顯示一個(gè)警告,提示他們此證書不受信任。這對(duì)于測(cè)試和開發(fā)環(huán)境可能沒(méi)問(wèn)題,但是如果計(jì)劃在生產(chǎn)環(huán)境中使用 SSL,應(yīng)該考慮從一個(gè)可信的證書頒發(fā)機(jī)構(gòu)獲取一個(gè)證書。

  • 使用 nginx 作為反向代理后,使用 ssl 證書的示意圖:
    Nginx 下將 http 改為 https
    Nginx 下將 http 改為 https

5. HTTP 到 HTTPS 的重定向(可選)

如果希望所有的 HTTP 流量都自動(dòng)跳轉(zhuǎn)到 HTTPS,可以在 Nginx 配置中添加以下內(nèi)容:

server {
    listen 80;
    server_name your-domain.com;
    return 301 https://$host$request_uri;
}

這段配置會(huì)捕獲所有到端口 80(HTTP) 的請(qǐng)求,并將它們重定向到相同地址的 HTTPS 版本。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-760431.html

到了這里,關(guān)于Nginx 下將 http 改為 https的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • k8s 對(duì)外服務(wù)之 ingress|ingress的對(duì)外暴露方式|ingress http,https代理|ingress nginx的認(rèn)證,nginx重寫

    k8s 對(duì)外服務(wù)之 ingress|ingress的對(duì)外暴露方式|ingress http,https代理|ingress nginx的認(rèn)證,nginx重寫

    service的作用體現(xiàn)在兩個(gè)方面,對(duì)集群內(nèi)部,它不斷跟蹤pod的變化,更新endpoint中對(duì)應(yīng)pod的對(duì)象,提供了ip不斷變化的pod的服務(wù)發(fā)現(xiàn)機(jī)制;對(duì)集群外部,他類似負(fù)載均衡器,可以在集群內(nèi)外部對(duì)pod進(jìn)行訪問(wèn)。 在Kubernetes中,Pod的IP地址和service的ClusterIP僅可以在集群網(wǎng)絡(luò)內(nèi)部使用,

    2024年02月10日
    瀏覽(27)
  • SpringBoot + Vue2項(xiàng)目打包部署到服務(wù)器后,使用Nginx配置SSL證書,配置訪問(wèn)HTTP協(xié)議轉(zhuǎn)HTTPS協(xié)議

    SpringBoot + Vue2項(xiàng)目打包部署到服務(wù)器后,使用Nginx配置SSL證書,配置訪問(wèn)HTTP協(xié)議轉(zhuǎn)HTTPS協(xié)議

    配置nginx.conf文件,這個(gè)文件一般在/etc/nginx/...中,由于每個(gè)人的體質(zhì)不一樣,也有可能在別的路徑里,自己找找... 證書存放位置,可自定義存放位置 兩個(gè)文件 后端配置 把.pfx拷貝到resource下,然后配置一下yml

    2024年02月02日
    瀏覽(100)
  • nginx http 跳轉(zhuǎn)到https

    改 Nginx 配置文件 在您安裝了 SSL 證書之后,您需要修改 Nginx 的配置文件以啟用 HTTPS 和 HTTP 自動(dòng)跳轉(zhuǎn) HTTPS。 打開 Nginx 配置文件(通常位于 /etc/nginx/nginx.conf ),找到您的網(wǎng)站配置塊。在該配置塊中添加以下內(nèi)容: 該配置塊包括兩個(gè)部分: 第一個(gè)部分監(jiān)聽 HTTP(端口 80),并

    2024年02月06日
    瀏覽(20)
  • Nginx配置http和https

    配置文件 默認(rèn)放置位置:{nginx}/conf.d/,以conf結(jié)尾 一、http簡(jiǎn)單配置 說(shuō)明: 1,http默認(rèn)端口是80 2,http://127.0.0.1:8888;為實(shí)際本地服務(wù)端口 3,一般服務(wù)域名為二級(jí)域名www,一級(jí)域名一般也配置指向www域名。 二、https配置 首先得申請(qǐng)ssl證書,百度,阿里都有免費(fèi)證書可用,申請(qǐng)成

    2023年04月09日
    瀏覽(56)
  • Nginx配置http跳轉(zhuǎn)https

    Nginx 可通過(guò)多種方式實(shí)現(xiàn) http 跳轉(zhuǎn) https,以下列出各種方式的實(shí)現(xiàn)方法。 這是 Nginx 新版本的寫法,推薦使用。在 Nginx 80 監(jiān)聽服務(wù)上加一行: 完整配置如下: Nginx 老版本的寫法,不推薦使用。將 “#http跳轉(zhuǎn)https” 這行修改為: 或 將 “#http跳轉(zhuǎn)https” 這行修改為: 寫一個(gè)

    2024年02月13日
    瀏覽(27)
  • 使用nginx搭建http和https環(huán)境

    目錄 一、nginx 1.1什么是負(fù)載均衡 1.2什么是反向代理 二、安裝nginx,并對(duì)nginx進(jìn)行基礎(chǔ)配置 三、為什么搭建http和https環(huán)境 四、配置http和https環(huán)境 五、配置成功后對(duì)nginx進(jìn)行檢查和運(yùn)行 六、測(cè)試 Nginx is an open-source web server software that can also be used as a reverse proxy, load balancer, and H

    2024年02月08日
    瀏覽(19)
  • Nginx實(shí)現(xiàn)本地http轉(zhuǎn)https請(qǐng)求

    Nginx實(shí)現(xiàn)本地http轉(zhuǎn)https請(qǐng)求

    目錄 前言: 一、安裝nginx 二、安裝OpenSSL ? ? ? ? ?1、下載OpenSSL: ? ? ? ? ?2、配置環(huán)境變量: ? ? ? ? ? ? ? ? ? 2.1:配置環(huán)境變量,OpenSSL_HOME? ? ? ? ? ? ? ? ? ? 2.2:配置path ?三、生成https證書 ? ? ? ? ?1、創(chuàng)建ssl文件夾用于存放證書。創(chuàng)建私鑰 (建議使用系統(tǒng)窗口,

    2024年01月20日
    瀏覽(31)
  • nginx配置http強(qiáng)制跳轉(zhuǎn)https

    一、什么是Nginx? Nginx是一個(gè)高性能的HTTP和反向代理Web服務(wù)器,同時(shí)也提供IMAP/POP3/SMTP服務(wù)。Nginx是一款輕量級(jí)的Web服務(wù)器/反向代理服務(wù)器及電子郵件(IMAP/POP3/SMTP)代理服務(wù)器。Nginx的特點(diǎn)是:占有內(nèi)存少,并發(fā)能力強(qiáng)。 Nginx專門為性能優(yōu)化而開發(fā),性能是最重要的考量,非常

    2024年02月16日
    瀏覽(26)
  • nginx實(shí)現(xiàn)https與http共存方案

    nginx實(shí)現(xiàn)https與http共存方案

    在日常開發(fā)中,到正式上線的時(shí)候大部分需要使用https來(lái)保證鏈路傳輸?shù)陌踩?,這塊相信大家都了解了,但有些特殊場(chǎng)景下可能需要http和https共存,并且端口都是同一個(gè)端口,只是協(xié)議不同,那這塊我們就借助nginx來(lái)配置了。 通過(guò)configure安裝共存需要的模塊stream、with-strea

    2024年02月10日
    瀏覽(19)
  • 【nginx】配置將HTTPS請(qǐng)求轉(zhuǎn)換成HTTP

    要將HTTPS請(qǐng)求轉(zhuǎn)換為HTTP請(qǐng)求,可以在Nginx的配置文件中添加以下配置: 打開Nginx的配置文件,通常位于 /etc/nginx/nginx.conf 或 /etc/nginx/conf.d/default.conf 。 在 server 塊中添加以下配置,將HTTPS請(qǐng)求轉(zhuǎn)發(fā)到后端的HTTP服務(wù): 將 yourdomain.com 替換為你的域名, /path/to/your/ssl_certificate.crt 和

    2024年02月10日
    瀏覽(23)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包