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

nginx搭建IPv6 ->IPv4反向代理服務(wù)器的實(shí)現(xiàn)

 更新時(shí)間:2025年05月27日 09:18:53   作者:Gerald Kwok  
本文主要介紹了nginx搭建IPv6 ->IPv4反向代理服務(wù)器的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

背景

在實(shí)際生產(chǎn)過程中,由于各種原因,我們的在線服務(wù)搭建在火山云服務(wù)器上,使用火山云包括 ECS、CLB、PLB 等組件進(jìn)行網(wǎng)絡(luò)通信,并且通過專線接受來自某公司內(nèi)部流量。但是在大概 22~23 年,某公司要把所有網(wǎng)絡(luò)流量變?yōu)?IPv6 往下發(fā),火山云的 CLB 和 PLB 還不支持 IPv6,那我們就面臨著斷流的風(fēng)險(xiǎn)。經(jīng)調(diào)研和學(xué)習(xí),了解到可以通過 nginx 來搭建一個(gè)反向代理服務(wù)里,把 IPv6 的流量轉(zhuǎn)成 IPv4 往下發(fā),這樣就解決了我們的問題。本篇文章也是記錄一下當(dāng)時(shí)的搭建過程和步驟,以及踩過的坑。

搭建步驟

sudo tar -zxvf nginx-1.18.0.tar.gz
  • 進(jìn)入 nginx 目錄并進(jìn)行安裝。
cd nginx-1.18.0
apt-get update
sudo apt-get install libpcre3-dev
./configure --prefix=/usr/local/nginx --with-stream
make # 編譯
make install # 安裝
  • 修改 nginx 配置信息。
cd ../conf
cp nginx.conf nginx.conf.bak
vim nginx.conf
# 設(shè)置 nginx 運(yùn)行的用戶(通常為 nobody 或 www-data)
# user  nobody;

# 指定 nginx 的工作進(jìn)程數(shù)量,auto 表示自動(dòng)根據(jù) CPU 核心數(shù)調(diào)整
worker_processes  auto;

# 設(shè)定錯(cuò)誤日志路徑及日志級(jí)別(默認(rèn)是 error,可選 notice、info 等)
#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

# 指定 nginx 運(yùn)行時(shí)的 PID 文件存放路徑
# pid        logs/nginx.pid;

events {
    # 每個(gè) worker 進(jìn)程允許的最大并發(fā)連接數(shù)
    worker_connections  65535;
}

http {
    # 引入 MIME 類型配置文件,確保 nginx 識(shí)別各種文件類型
    include       mime.types;
    
    # 設(shè)置默認(rèn)的 MIME 類型,避免未識(shí)別的文件變成純文本
    default_type  application/octet-stream;

    # 定義日志格式($remote_addr:客戶端 IP,$request:請(qǐng)求內(nèi)容,$status:狀態(tài)碼等)
    # log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';

    # 指定訪問日志存儲(chǔ)路徑及使用的日志格式
    # access_log  logs/access.log  main;

    # 啟用 sendfile 以優(yōu)化文件傳輸性能
    sendfile        on;

    # 結(jié)合 sendfile 使用,減少 TCP 發(fā)送延遲(但可能影響小數(shù)據(jù)包傳輸)
    # tcp_nopush     on;

    # 設(shè)定連接的 Keep-Alive 超時(shí)時(shí)間(0 代表關(guān)閉 keep-alive)
    # keepalive_timeout  0;
    keepalive_timeout  120s;

    # 設(shè)定一個(gè)連接內(nèi)最大請(qǐng)求數(shù),避免長(zhǎng)連接占用過多資源
    keepalive_requests 100000;

    # 啟用 gzip 壓縮,提高傳輸效率(默認(rèn)關(guān)閉)
    # gzip  on;

    server {
        # 監(jiān)聽 IPv4 80 端口(默認(rèn)情況下,這行被注釋)
        # listen 80;

        # 監(jiān)聽 IPv4 443 端口(用于 HTTPS,默認(rèn)情況下被注釋)
        # listen 443;

        # 監(jiān)聽 IPv6 80 端口(默認(rèn)啟用)
        listen [::]:80;

        # 服務(wù)器的域名(需要修改為你的實(shí)際域名)
        server_name aaa.bbb.ccc;

        # 訪問日志存儲(chǔ)路徑
        access_log  /www/wwwlogs/aaa.bbb.ccc.log;

        # 錯(cuò)誤日志存儲(chǔ)路徑
        error_log  /www/wwwlogs/aaa.bbb.ccc.error.log;

        location / {
            # 代理請(qǐng)求使用 HTTP/1.1(避免 HTTP/1.0 造成的連接復(fù)用問題)
            proxy_http_version 1.1;

            # 代理請(qǐng)求時(shí)設(shè)置 Host 頭,防止后端服務(wù)因 Host 變更異常
            proxy_set_header Host aaa.bbb.ccc:80; 

            # 傳遞客戶端真實(shí) IP
            proxy_set_header X-Real-IP $remote_addr;

            # 清空 Connection 頭,防止 nginx 誤處理長(zhǎng)連接
            proxy_set_header Connection "";

            # 傳遞客戶端遠(yuǎn)程地址(用于后端日志分析)
            proxy_set_header REMOTE-HOST $remote_addr;

            # 傳遞 X-Forwarded-For,記錄代理鏈中的所有 IP
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

            # 代理請(qǐng)求轉(zhuǎn)發(fā)到 upstream 定義的 backend 服務(wù)器
            proxy_pass http://backend;
        }
    }

    upstream backend {
        # 配置上游服務(wù)器(負(fù)載均衡后端)
        # 這里的 IP 為 nginx 下發(fā)流量的后端服務(wù)器 IP(可以添加多個(gè))
        server 192.0.0.1:80 weight=10 max_fails=5;

        # keepalive 連接池大小,減少 TCP 連接建立的開銷
        keepalive 100000;
    }
}
  • 啟動(dòng) nginx
mkdir -p /www/wwwlogs
/usr/local/nginx/sbin/nginx

/usr/local/nginx/sbin/nginx -s stop

/usr/local/nginx/sbin/nginx -s reload

ps -ef | grep nginx # 查看服務(wù)進(jìn)程
  • 增加定時(shí)任務(wù)配置,定期清理 nginx 日志
寫個(gè)定時(shí)任務(wù)把 nginx 的日志清一清  /etc/crontab
*  *    * * *   root    echo 1 > /www/wwwlogs/dimc.byted.org.log
*  *    * * *   root    echo 1 > /www/wwwlogs/dimc.byted.org.error.log

nginx 配置中最關(guān)鍵的參數(shù)

  • listen [::]:80; # 這里表示你要監(jiān)聽所有 IPv6 的 80 端口流量。
    
  • 讓 nginx 使用長(zhǎng)連接,防止高并發(fā)場(chǎng)景下因連接數(shù)消耗完導(dǎo)致的性能瓶頸。

# 設(shè)定連接的 Keep-Alive 超時(shí)時(shí)間(0 代表關(guān)閉 keep-alive)
# keepalive_timeout  0;
keepalive_timeout  120s;

# 設(shè)定一個(gè)連接內(nèi)最大請(qǐng)求數(shù),避免長(zhǎng)連接占用過多資源
keepalive_requests 100000;


proxy_http_version 1.1; # 在 http 1.1 版本之后才支持長(zhǎng)連接,所以這一點(diǎn)非常重要
proxy_set_header Connection ""; # 設(shè)置 Connection 為長(zhǎng)連接,默認(rèn)為 no

到此這篇關(guān)于nginx搭建IPv6 ->IPv4反向代理服務(wù)器的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)nginx ipv6反向代理ipv4內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家! 

相關(guān)文章

  • 從安全加固到性能調(diào)優(yōu)詳解Nginx中生產(chǎn)環(huán)境配置的完全指南

    從安全加固到性能調(diào)優(yōu)詳解Nginx中生產(chǎn)環(huán)境配置的完全指南

    本文系統(tǒng)梳理了Nginx在生產(chǎn)環(huán)境中常用的配置項(xiàng),每個(gè)配置都附帶解決的問題和實(shí)際應(yīng)用場(chǎng)景,幫助你構(gòu)建健壯,安全,高性能的Web服務(wù),有需要的小伙伴可以參考下
    2026-04-04
  • nginx配置https加密訪問的詳細(xì)教程

    nginx配置https加密訪問的詳細(xì)教程

    這篇文章主要介紹了nginx配置https加密訪問的詳細(xì)教程,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-11-11
  • nginx使用ssl模塊配置支持HTTPS訪問的方法

    nginx使用ssl模塊配置支持HTTPS訪問的方法

    這篇文章主要介紹了nginx使用ssl模塊配置支持HTTPS訪問的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-06-06
  • Nginx通過代理服務(wù)器訪問目標(biāo)接口的實(shí)現(xiàn)

    Nginx通過代理服務(wù)器訪問目標(biāo)接口的實(shí)現(xiàn)

    本文主要介紹了Nginx通過代理服務(wù)器訪問目標(biāo)接口的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-08-08
  • Keepalived如何實(shí)現(xiàn)Nginx高可用

    Keepalived如何實(shí)現(xiàn)Nginx高可用

    這篇文章主要介紹了Keepalived如何實(shí)現(xiàn)Nginx高可用,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-10-10
  • Nginx使用Prometheus+Grafana實(shí)現(xiàn)日志分析與監(jiān)控

    Nginx使用Prometheus+Grafana實(shí)現(xiàn)日志分析與監(jiān)控

    文章介紹了如何使用Prometheus和Grafana對(duì)Nginx進(jìn)行日志分析和監(jiān)控,創(chuàng)建儀表盤來展示Nginx的性能指標(biāo),通過這個(gè)過程,可以實(shí)現(xiàn)對(duì)Nginx的實(shí)時(shí)監(jiān)控和性能分析,及時(shí)發(fā)現(xiàn)并解決潛在問題,感興趣的朋友跟隨小編一起看看吧
    2025-12-12
  • 詳解Nginx服務(wù)器中配置Sysguard模塊預(yù)防高負(fù)載的方案

    詳解Nginx服務(wù)器中配置Sysguard模塊預(yù)防高負(fù)載的方案

    這篇文章主要介紹了詳解Nginx服務(wù)器中配置Sysguard模塊預(yù)防高負(fù)載的方案,該模塊由阿里巴巴的團(tuán)隊(duì)開發(fā),能夠設(shè)置負(fù)載閥值,比較強(qiáng)大,需要的朋友可以參考下
    2016-01-01
  • Nginx代理WebSocket失敗的完整排查過程

    Nginx代理WebSocket失敗的完整排查過程

    在開發(fā)基于 WebSocket 的實(shí)時(shí)應(yīng)用時(shí),使用 Nginx 作為反向代理是常見做法,可是我遇見了后端直連 WebSocket 成功,通過 Nginx 代理卻失敗,本文將完整復(fù)盤一次真實(shí)排查過程,帶你避開所有坑,需要的朋友可以參考下
    2025-11-11
  • Nginx代理Redis哨兵主從配置的實(shí)現(xiàn)

    Nginx代理Redis哨兵主從配置的實(shí)現(xiàn)

    本文主要介紹了Nginx代理Redis哨兵主從配置的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07
  • 在Ubuntu上配置Nginx實(shí)現(xiàn)開機(jī)自啟功能

    在Ubuntu上配置Nginx實(shí)現(xiàn)開機(jī)自啟功能

    本文主要介紹了在Ubuntu上配置Nginx實(shí)現(xiàn)開機(jī)自啟功能,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2025-09-09

最新評(píng)論

黄浦区| 平塘县| 仁寿县| 建昌县| 鲁山县| 那坡县| 淳化县| 汾阳市| 恭城| 桐乡市| 江山市| 巩义市| 平原县| 方城县| 新安县| 海林市| 建德市| 呼和浩特市| 梓潼县| 舞钢市| 浮山县| 阜康市| 苗栗市| 始兴县| 铁力市| 城固县| 汕头市| 邯郸县| 乐至县| 虎林市| 双柏县| 文昌市| 乌兰浩特市| 冀州市| 湖北省| 云和县| 永昌县| 新干县| 特克斯县| 昭平县| 葵青区|