欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

nginx配置中proxy_pass反向代理502的bug記錄

 更新時(shí)間:2024年01月23日 09:32:22   作者:晦暗天明  
這篇文章主要介紹了nginx配置中proxy_pass反向代理502的bug記錄,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

nginx配置proxy_pass反向代理502bug

記錄一個(gè)坑人的bug,

我今天在一臺(tái)新的liunx上運(yùn)行nginx來進(jìn)行反向代理時(shí)候,發(fā)現(xiàn)怎么測都是502

我把配置全部刪了從頭開始配置,發(fā)現(xiàn)80端口正常,80端口index.html正常,反向代理轉(zhuǎn)向http://127.0.0.1/也正常,

但就是proxy_pass轉(zhuǎn)向其他端口,比如說http://127.0.0.1:3000/時(shí)候,會(huì)出現(xiàn)502

這個(gè)bug找了半天,最后發(fā)現(xiàn)是環(huán)境安全策略問題,

要運(yùn)行這個(gè)指令

setsebool -P httpd_can_network_connect true

這是一個(gè)SELinux的命令,用于允許HTTPD進(jìn)程連接網(wǎng)絡(luò)。SELinux是一種安全機(jī)制,用于控制進(jìn)程和用戶對(duì)系統(tǒng)資源的訪問權(quán)限。

如果沒有正確配置SELinux,可能會(huì)導(dǎo)致一些進(jìn)程無法正常運(yùn)行,例如在Nginx上進(jìn)行反向代理時(shí)可能會(huì)導(dǎo)致連接錯(cuò)誤。通過執(zhí)行此命令,可以允許HTTPD進(jìn)程連接網(wǎng)絡(luò),并解決連接錯(cuò)誤的問題。

氣死我了,這個(gè)bug折騰了一個(gè)小時(shí)。

nginx反向代理 502 Bad Gateway

查看nginx的error.log日志文件發(fā)現(xiàn)如下信息:

upstream sent too big header while reading response header from upstream

原因是

nginx緩沖區(qū)有一個(gè)bug造成的,網(wǎng)站的頁面消耗占用緩沖區(qū)可能過大。

proxy是nginx作為client轉(zhuǎn)發(fā)時(shí)使用的,如果header過大,超出了默認(rèn)的1k,就會(huì)引發(fā)上述的upstream sent too big header 

說白了就是nginx把外部請(qǐng)求轉(zhuǎn)給后端(如apache),apache返回的header太大,導(dǎo)致nginx處理不過來。

解決方法

代理主機(jī)的配置文件中添加如下代碼:

upstream site  {
    server 127.0.0.1:8080;
}
 
server {
    listen 80;
 
    server_name  www.site.com;
 
    location / {
        proxy_pass  http://site;
        
 
        #下面這三段代碼是需要添加的。
        proxy_buffer_size 64k;
        proxy_buffers 32 32k;
        proxy_busy_buffers_size 128k;
   }
}

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Nginx基礎(chǔ)配置(main、events、http、server、location)

    Nginx基礎(chǔ)配置(main、events、http、server、location)

    本文主要介紹了Nginx基礎(chǔ)配置(main、events、http、server、location),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-06-06
  • Nginx+RTMP+nginx-http-flv-module環(huán)境搭建

    Nginx+RTMP+nginx-http-flv-module環(huán)境搭建

    本文主要介紹了Nginx+RTMP+nginx-http-flv-module環(huán)境搭建,搭建方式可用于直播、視頻會(huì)議等場景,同時(shí)支持HTTP-FLV,方便在瀏覽器中進(jìn)行播放
    2024-03-03
  • 詳解nginx實(shí)現(xiàn)https網(wǎng)站設(shè)置

    詳解nginx實(shí)現(xiàn)https網(wǎng)站設(shè)置

    這篇文章主要介紹了詳解nginx實(shí)現(xiàn)https網(wǎng)站設(shè)置,詳細(xì)的介紹了HTTPS簡介和證書生成等,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-06-06
  • 使用Nginx部署Vue項(xiàng)目全過程及踩坑記錄

    使用Nginx部署Vue項(xiàng)目全過程及踩坑記錄

    這篇文章主要介紹了使用Nginx部署Vue項(xiàng)目全過程及踩坑記錄,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • nginx中的proxy_set_header參數(shù)指令詳解

    nginx中的proxy_set_header參數(shù)指令詳解

    本文介紹了Nginx中的proxy_set_header指令,用于自定義代理請(qǐng)求的HTTP頭部信息,實(shí)現(xiàn)更靈活的反向代理功能,提供了實(shí)際應(yīng)用場景和配置示例,幫助讀者更好地理解和使用proxy_set_header指令,感興趣的朋友一起看看吧
    2025-03-03
  • Nginx中keepalive配置小結(jié)

    Nginx中keepalive配置小結(jié)

    本文介紹了Nginx keepalive配置的概念和作用,闡述了keepalive連接的基本原理和優(yōu)勢,并給出了一些常用的配置示例,具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-09-09
  • Nginx反向代理后端服務(wù)的操作步驟

    Nginx反向代理后端服務(wù)的操作步驟

    反向代理是一種代理服務(wù)器,位于客戶端與服務(wù)器之間,后端服務(wù)器處理請(qǐng)求后將響應(yīng)發(fā)送回反向代理服務(wù)器,反向代理服務(wù)器再將響應(yīng)返回給客戶端,本文將詳細(xì)介紹Nginx如何反向代理后端服務(wù),涵蓋其基本概念、配置方法、負(fù)載均衡、SSL/TLS支持等多個(gè)方面,需要的朋友可以參考下
    2024-06-06
  • 同一臺(tái)服務(wù)器安裝多個(gè)Nginx的方法總結(jié)

    同一臺(tái)服務(wù)器安裝多個(gè)Nginx的方法總結(jié)

    在同一臺(tái)服務(wù)器上安裝多個(gè)nginx完全沒有問題,但有些地方是需要注意的,這篇文章為大家整理了一些常會(huì)遇到的問題以及解決方法,需要的可以參考一下
    2023-08-08
  • Nginx HTTP:413 Request Entity Too Large解決方法

    Nginx HTTP:413 Request Entity Too Large解決方法

    這篇文章主要介紹了Nginx HTTP:413 Request Entity Too Large解決方法,這個(gè)問題需要修改PHP配置以及Nginx配置才可以解決,需要的朋友可以參考下
    2015-07-07
  • Nginx使用if指令實(shí)現(xiàn)多個(gè)proxy_pass方式

    Nginx使用if指令實(shí)現(xiàn)多個(gè)proxy_pass方式

    這篇文章主要介紹了Nginx使用if指令實(shí)現(xiàn)多個(gè)proxy_pass方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-01-01

最新評(píng)論