最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用?nginx?搭建代理服務(wù)器(正向代理?https?網(wǎng)站)的詳細(xì)步驟

 更新時(shí)間:2024年08月16日 15:17:59   作者:墨鴉_Cormorant  
這篇文章主要介紹了使用?nginx?搭建代理服務(wù)器(正向代理?https?網(wǎng)站)指南的相關(guān)操作,本文給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧

簡(jiǎn)介

正向代理 簡(jiǎn)介

在企業(yè)開(kāi)發(fā)環(huán)境中,局域網(wǎng)內(nèi)的設(shè)備通常需要通過(guò)正向代理服務(wù)器訪問(wèn)互聯(lián)網(wǎng)。正向代理服務(wù)器充當(dāng)中介,幫助客戶端請(qǐng)求外部資源并返回結(jié)果。局域網(wǎng)內(nèi)也就是俗稱的內(nèi)網(wǎng),局域網(wǎng)外的互聯(lián)網(wǎng)就是外網(wǎng),在一些特殊場(chǎng)景內(nèi),例如:醫(yī)院。而局域網(wǎng)中的客戶端要訪問(wèn)這些資源時(shí),就需要通過(guò)代理服務(wù)器。這種通過(guò)代理服務(wù)器訪問(wèn)外部網(wǎng)絡(luò)資源的方式,就是正向代理。正向代理不僅用于提升訪問(wèn)速度,還能提高網(wǎng)絡(luò)安全性、管理訪問(wèn)權(quán)限和優(yōu)化網(wǎng)絡(luò)流量。

原生 nginx 可以作為 http 的正向代理服務(wù)器,但是不能用做 https 的正向代理服務(wù)器。因?yàn)?http 正向代理使用的是 get 請(qǐng)求,但是 https 使用的確實(shí) connect 請(qǐng)求,而原生 nginx 不支持 connect 請(qǐng)求。所以需要第三方模塊 ngx_http_proxy_connect_module 來(lái)支持 https 的正向代理,使用這個(gè)插件,意味著需要重新編譯 nginx,在編譯的過(guò)程中,將插件添加進(jìn)去。本次編譯以目前穩(wěn)定版 1.24.0 為例。

ngx_http_proxy_connect_module 介紹

  • ngx_http_proxy_connect_module 項(xiàng)目地址:傳送門(注:目標(biāo)地址為 github,打不開(kāi)則請(qǐng)科學(xué)上網(wǎng))
  • ngx_http_proxy_connect_module 是 Nginx 的一個(gè)擴(kuò)展模塊,主要功能是允許 Nginx 作為代理服務(wù)器處理 CONNECT 方法。通過(guò)該模塊,可以將 Nginx 作為 HTTP/HTTPS 代理服務(wù)器,甚至可以直接用作 WebSocket 服務(wù)器。

注:在 HTTP 協(xié)議中,CONNECT 方法主要用于建立隧道(即建立到遠(yuǎn)程服務(wù)器的端到端的加密連接),通常在代理服務(wù)器后面的客戶端需要通過(guò)代理服務(wù)器與目標(biāo)服務(wù)器建立安全連接,比如 WebSocket 連接和 HTTPS 的中間人代理。

詳細(xì)步驟

包準(zhǔn)備

從 nginx 官網(wǎng)下載 nginx 源碼包

注:也可以直接在 Linux 主機(jī)上下載:

wget http://nginx.org/download/nginx-1.24.0.tar.gz

從 github 下載 ngx_http_proxy_connect_module 源碼

從 github 下載 ngx_http_proxy_connect_module 模塊的 nginx 內(nèi)核補(bǔ)丁

注:

  • 請(qǐng)嚴(yán)格按照下圖安裝和 nginx 版本匹配的 nginx 內(nèi)核補(bǔ)丁,否則會(huì)導(dǎo)致 https 代理不生效。
  • ngx_http_proxy_connect_module 源碼壓縮包內(nèi)(ngx_http_proxy_connect_module-master/patch/)可能已包含 nginx 內(nèi)核補(bǔ)丁,這種情況確認(rèn)即可,無(wú)需再下載補(bǔ)丁。

Linux 編譯并安裝 nginx

# 使用yum包管理工具安裝相關(guān)編譯環(huán)境及相關(guān)依賴
yum -y install gcc gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel openssl-libs pcre2
# 或使用dnf包管理工具安裝
#dnf -y install gcc gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel
# 將安裝包放于/root目錄,可自定義
cd /root
# 上傳nginx安裝包并解壓
tar -zxvf nginx-1.24.0.tar.gz
# 進(jìn)入nginx安裝包解壓目錄并創(chuàng)建modules源碼包存放目錄
cd nginx-1.24.0
mkdir ./modules && cd ./modules
# 上傳 ngx_http_proxy_connect_module 源碼包并解壓
unzip ngx_http_proxy_connect_module-master.zip
# 進(jìn)入nginx安裝包解壓目錄根路徑
cd /root/nginx-1.24.0
# 對(duì)nginx內(nèi)核打補(bǔ)丁
patch -p1 < modules/ngx_http_proxy_connect_module-master/patch/proxy_connect_rewrite_102101.patch
# 配置編譯參數(shù)編譯前確認(rèn)pcre、zlib、openssl的庫(kù)是否已經(jīng)正常安裝
./configure \
--prefix=/usr/local/nginx \
--with-http_ssl_module \
--with-http_realip_module \
--with-stream \
--with-stream_ssl_module \
--add-module=/root/nginx-1.24.0/modules/ngx_http_proxy_connect_module-master
	# --prefix :指定需要安裝的目錄,可自定義
	# --add-module :ngx_http_proxy_connect_module-master模塊源碼路徑,根據(jù)實(shí)際路徑修改
# 編譯并安裝nginx
make && make install

修改 nginx 配置文件

編輯配置文件

vi /usr/local/nginx/conf/nginx.conf

增加如下配置:

    server {
        # 對(duì)外服務(wù)端口
        listen 80;
        server_name  localhost;
        # 域名解析服務(wù)器并禁用ipv6
    	# 注:若不禁用ipv6,會(huì)由于當(dāng)前互聯(lián)網(wǎng)對(duì)IPv6支持不完整,導(dǎo)致在DNS解析時(shí)偶發(fā)超時(shí)問(wèn)題(502)
        resolver 114.114.114.114 valid=60s ipv6=off;
        # 解析超時(shí)時(shí)間
        resolver_timeout 30s;
        # 開(kāi)啟porxy connect功能(代理)
        proxy_connect;
        # 設(shè)置允許代理的目標(biāo)端口和范圍的列表
        proxy_connect_allow            80 443 563;
        # 定義客戶端與代理服務(wù)器建立連接的超時(shí)時(shí)間
        proxy_connect_connect_timeout  20s;
        # 定義客戶端從代理服務(wù)器讀取響應(yīng)的超時(shí)時(shí)間
        proxy_connect_read_timeout     20s;
        # 設(shè)置客戶端將請(qǐng)求傳輸?shù)酱矸?wù)器的超時(shí)時(shí)間
        proxy_connect_send_timeout     20s;
        location / {
            # 正向代理配置,根據(jù)請(qǐng)求地址自動(dòng)解析出目標(biāo)網(wǎng)站地址并進(jìn)行代理
            proxy_pass $scheme://$host$request_uri;
            # 發(fā)送到被代理網(wǎng)站的請(qǐng)求需要添加Host請(qǐng)求頭
            proxy_set_header Host $host;
        }
    }

nginx 啟動(dòng)與測(cè)試

啟動(dòng)

# 啟動(dòng)nginx
/usr/local/nginx/sbin/nginx
# 重新加載nginx配置
/usr/local/nginx/sbin/nginx -s reload
# 停止nginx
/usr/local/nginx/sbin/nginx -s stop

測(cè)試 nginx 代理功能了

curl https://www.baidu.com -v -x 127.0.0.1:80

拓展

設(shè)置 nginx 開(kāi)機(jī)自啟動(dòng)

創(chuàng)建開(kāi)機(jī)自啟腳本

vim /etc/systemd/system/nginx.service

腳本內(nèi)容:

# 僅修改 /usr/local/nginx/sbin/nginx 這個(gè)路徑即可(修改為實(shí)際的nginx路徑)
[Unit]
Description=nginx service
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s quit
PrivateTmp=true
[Install]
WantedBy=multi-user.target

設(shè)置文件權(quán)限

chmod 755 /etc/systemd/system/nginx.service

設(shè)置開(kāi)機(jī)自啟動(dòng)

systemctl daemon-reload
systemctl enable nginx

驗(yàn)證

# nginx啟動(dòng)
systemctl start nginx 
# nginx停止
systemctl stop nginx 
# 直接重啟服務(wù)器即可(nginx就自動(dòng)重啟了)
reboot

常用命令

# 啟動(dòng)nginx服務(wù)
systemctl start nginx
# 重新啟動(dòng)nginx服務(wù)
systemctl restart nginx
# 查看nginx服務(wù)當(dāng)前狀態(tài)
systemctl status nginx
# 停止開(kāi)機(jī)自啟動(dòng)
systemctl disable nginx

到此這篇關(guān)于使用 nginx 搭建代理服務(wù)器(正向代理 https 網(wǎng)站)指南的文章就介紹到這了,更多相關(guān)nginx 搭建代理服務(wù)器內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • nginx長(zhǎng)連接配置小結(jié)

    nginx長(zhǎng)連接配置小結(jié)

    Nginx長(zhǎng)連接通過(guò)保持TCP連接,減少連接建立和關(guān)閉的開(kāi)銷,提高性能和效率,本文就來(lái)介紹一下nginx長(zhǎng)連接配置,具有一定的參考價(jià)值,感興趣的可以了解一下
    2025-02-02
  • nginx后端節(jié)點(diǎn)的健康檢查和nginx平滑升級(jí)方式

    nginx后端節(jié)點(diǎn)的健康檢查和nginx平滑升級(jí)方式

    本文介紹了Nginx反向代理的ngx_http_proxy_module和ngx_http_upstream_module模塊,以及淘寶開(kāi)發(fā)的nginx_upstream_check_module模塊,并介紹了Nginx平滑升級(jí)原理及實(shí)戰(zhàn)操作,最后總結(jié)了Nginx版本升級(jí)的方法
    2026-04-04
  • linux查找當(dāng)前系統(tǒng)nginx路徑的兩種方法

    linux查找當(dāng)前系統(tǒng)nginx路徑的兩種方法

    工作中有很多服務(wù)器, 它們上面裝的 nginx 的路徑也太不相當(dāng), 當(dāng)我們拿到一個(gè)不熟悉的服務(wù)器時(shí), 我們?cè)趺粗? 當(dāng)前運(yùn)行的nginx的目錄是哪一個(gè)呢,本文小編給大家介紹了兩種linux查找當(dāng)前系統(tǒng)nginx的路徑的方法,需要的朋友可以參考下
    2023-11-11
  • nginx作grpc的反向代理踩坑總結(jié)

    nginx作grpc的反向代理踩坑總結(jié)

    nginx是一款高性能的web服務(wù)器,常用于負(fù)載均衡和反向代理,本文主要介紹了nginx作grpc的反向代理踩坑總結(jié),感興趣的可以了解一下
    2021-07-07
  • nginx高可用集群的實(shí)現(xiàn)過(guò)程

    nginx高可用集群的實(shí)現(xiàn)過(guò)程

    這篇文章主要介紹了nginx高可用集群的實(shí)現(xiàn)過(guò)程,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-10-10
  • 前端必備的一些nginx知識(shí)點(diǎn)匯總

    前端必備的一些nginx知識(shí)點(diǎn)匯總

    Nginx是一個(gè)高性能的HTTP和反向代理web服務(wù)器,同時(shí)也提供了IMAP/POP3/SMTP服務(wù),下面這篇文章主要給大家匯總介紹了關(guān)于前端必備的一些nginx知識(shí)點(diǎn),文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-03-03
  • 詳解Nginx替換SSL證書后的正確操作及常見(jiàn)問(wèn)題排查

    詳解Nginx替換SSL證書后的正確操作及常見(jiàn)問(wèn)題排查

    本文主要介紹了詳解Nginx替換SSL證書后的正確操作及常見(jiàn)問(wèn)題排查,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2025-08-08
  • CentOS7安裝Nginx并配置自動(dòng)啟動(dòng)的方法步驟

    CentOS7安裝Nginx并配置自動(dòng)啟動(dòng)的方法步驟

    這篇文章主要介紹了CentOS7安裝Nginx并配置自動(dòng)啟動(dòng)的方法步驟,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-10-10
  • nginx配置錯(cuò)誤日志的實(shí)現(xiàn)步驟

    nginx配置錯(cuò)誤日志的實(shí)現(xiàn)步驟

    配置nginx代理過(guò)程中,如果出現(xiàn)錯(cuò)誤,需要看日志,可以把nginx日志配置出來(lái),以便快速定位日志問(wèn)題,下面就來(lái)介紹一下nginx配置錯(cuò)誤日志的實(shí)現(xiàn)步驟,感興趣的可以了解一下
    2025-08-08
  • 國(guó)內(nèi)一些常用PHP的CMS的Nginx服務(wù)器的偽靜態(tài)規(guī)則整理

    國(guó)內(nèi)一些常用PHP的CMS的Nginx服務(wù)器的偽靜態(tài)規(guī)則整理

    當(dāng)我們從apache服務(wù)器轉(zhuǎn)向Nginx服務(wù)器的時(shí)候,它們的偽靜態(tài)規(guī)則就不一樣了,所以你熟悉Nginx服務(wù)器的偽靜態(tài)規(guī)則,自己寫當(dāng)然也好
    2011-03-03

最新評(píng)論

中宁县| 山阳县| 上虞市| 清水河县| 甘谷县| 游戏| 茂名市| 芦溪县| 建宁县| 泰顺县| 贺兰县| 神池县| 常州市| 阿巴嘎旗| 金华市| 惠来县| 噶尔县| 光泽县| 陕西省| 横山县| 龙里县| 锡林郭勒盟| 东丽区| 杨浦区| 株洲县| 平远县| 长阳| 双辽市| 泌阳县| 雷山县| 临猗县| 广南县| 新安县| 兴安县| 宜昌市| 蛟河市| 额济纳旗| 边坝县| 普宁市| 绥芬河市| 大渡口区|