亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 網站 > Nginx > 正文

Nginx服務器中414錯誤和504錯誤的配置解決方法

2024-08-30 12:27:52
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了Nginx服務器中414錯誤和504錯誤的配置解決方法,分別對應Request-URI Too Large和Gateway Time-out這樣的錯誤提示,需要的朋友可以參考下
 

414 Request-URI Too Large

#客戶端請求頭緩沖區大小,如果請求頭總長度大于小于128k,則使用此緩沖區,#請求頭總長度大于128k時使用large_client_header_buffers設置的緩存區client_header_buffer_size 128k;#large_client_header_buffers 指令參數4為個數,128k為大小,默認是8k。申請4個128k。large_client_header_buffers 4 128k;

當http 的URI太長或者request header過大時會報414 Request URI too large或400 bad request錯誤。

可能原因

場景1.cookie中寫入的值太大造成的,因為header中的其他參數的size一般比較固定,只有cookie可能被寫入較大的數據

場景2.請求參數太長,比如發布一個文章正文,用urlencode后,使用get方式傳到后臺。

GET http://www.264.cn/ HTTP/1.1Host: www.264.cnConnection: keep-aliveCache-Control: max-age=0Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8User-Agent: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.31 Accept-Encoding: gzip,deflate,sdchAccept-Language: zh-CN,zh;q=0.8Accept-Charset: GBK,utf-8;q=0.7,*;q=0.3Cookie: bdshare_firstime=1363517175366; If-Modified-Since: Mon, 13 May 2013 13:40:02 GMT

當請求頭過大時,超過large_client_header_buffer時,
nginx可能返回"Request URI too large" (414)或者"Bad-request"(400)錯誤,

如上例HTTP請求頭由多行構成,
其中"GET http://www.264.cn/ HTTP/1.1"表示Request line

當Request line的長度大于large_client_header_buffer的一個buffer(128k)時,nginx會返回"Request URI too large" (414)錯誤,對應上面的場景2。

請求投中最長的一行也要小于large_client_header_buffer,當不是Request line的最長行大于一個buffer(128k)時,會返回"Bad-request"(400)錯誤,對應上面的場景1。

解決辦法:這時可以調大上述兩個值。

client_header_buffer_size 512k;large_client_header_buffers 4 512k;

504 Gateway Time-out
之前網站一直是使用nginx做代理后端的apache運行php來提供服務。

apache經常會不定期不定時間的出現不能服務失去響應,然后nginx出現"504 Gateway Time-out"

查看錯誤日志也看不到任何東西,以為是apache的bug(其實不是,下面會說原因)。

也許年齡大了人就不愛折騰,愿意保持原狀不動,使用監控工具,每次收到報警后都重新啟動apache勉強維持著。

終于有一天我煩了,不就是處理php嗎,我不用apache總行了吧,一怒之下使用源安裝php-fpm轉移到php-fpm來運行php。

安裝php并不麻煩,使用源安裝還是很順利的,唯一需要做的就是設置php worker工作進程的日志輸出php錯誤日志。


一切準備就緒后把原來的proxy_pass換成fastcgipass就可以了。

upstream apachephp {  server www.quancha.cn:8080; #Apache1}....proxy_pass http://apachephp;

替換成成

upstream php {    server 127.0.0.1:9000;}...fastcgi_pass php;

就可以把apache上跑的php遷移到php-fpm上來跑。

原以為這樣就可以高枕無憂了,遷移完成是也確實沒什么問題,但是如果你不去分析問題的根本原因在哪。

問題還是會找上門來,第二天nginx又報了504的gateway timeout。

這回沒apache什么事了吧,apache總算撇清了關系。

那應該還是在nginx和php-fpm身上,查看nginx的錯誤日志,可以看到

[error] 6695#0: *168438 upstream timed out (110: Connection timed out) while reading response header from upstream,...request: "GET /kd/open.php?company=chinapost&number=PA24977020344 HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "www.quancha.cn"

看到這里基本上就排除了nginx嫌疑,nginx是在等待php處理"GET /kd/open.php?company=chinapost&number=PA24977020344 HTTP/1.1"超時退出了。

馬上重啟php-fpm,問題沒有了,網站可以訪問了。

再次訪問該頁面,依然沒有響應,但同時訪問別的頁面正常,該頁面刷新幾次后,整個網站都是bad gateway timeout了。

問題就縮小到這個php腳本上了。

netstat -napo |grep "php5-fpm" | wc -l

查看php工作進程已經達到了配置文件里的上限10,有種感覺就是大家都被open.php這個腳本卡住了。

這個腳本是干什么的呢?這個腳本就是采集快遞信息的,里面用到了php_curl。

PHP腳本如果執行時間超過php.ini中的配置項max_execution_time不出結果就會強制退出。

查看了php.ini中max_execution_time確實配了,值為30。

萬能google派上用場了,經過不斷google后得到下面這句話

set_time_limit()函數和配置指令max_execution_time只影響腳本本身執行的時間。任何發生在諸如使用system()的系統調用,流操作,數據庫操作等的腳本執行的最大時間不包括其中,當該腳本已運行。

就是說如果腳本中執行了其它操作的時間是不計在腳本運行時間當中的,如果你沒設置超時,那么php就會一直等待調用的結果。

查看open.php源文件一看,果然沒有設置curl的超時時間。

增加如下兩行,重新刷新,后問題解決了。

curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10); //timeout on connectcurl_setopt($ch, CURLOPT_TIMEOUT, 10); //timeout on response

當然,除了這種方法外,php-fpm里也提供參數供我們強制殺死長時間無結果的進程,只是該參數默認沒打開。

php-fpm的配置文件里可以設置一個參數request_terminate_timeout,請求終止的超時時間,當請求執行超過這個時間就會被kill。

同時它還有個參數request_slowlog_timeout,用來記錄慢請求日志的。

命令行運行php的話,可以使用這段代碼

$real_execution_time_limit = 60; //時間限制if (pcntl_fork()){// some long time code which should be// terminated after $real_execution_time_limit seconds passed if it's not// finished by that time}else{sleep($real_execution_time_limit);posix_kill(posix_getppid(), SIGKILL);}
 


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美激情一区二区三区久久久| 亚洲色图狂野欧美| 成人a级免费视频| 7777免费精品视频| 一本一本久久a久久精品牛牛影视| 日本久久久久亚洲中字幕| 欧美视频在线视频| 国语自产在线不卡| 日韩在线视频国产| 亚洲精品视频网上网址在线观看| www亚洲欧美| 国产香蕉97碰碰久久人人| 亚洲人成网站免费播放| 久久国产视频网站| 国产剧情久久久久久| 最近日韩中文字幕中文| 91国偷自产一区二区三区的观看方式| 日韩在线视频观看正片免费网站| 欧美在线一级va免费观看| 亚洲成人激情图| 日韩在线视频免费观看高清中文| 国产欧美日韩精品在线观看| 欧美精品做受xxx性少妇| 欧美老女人在线视频| 国产精品扒开腿做爽爽爽视频| 欧洲s码亚洲m码精品一区| 久久人人爽人人爽人人片av高请| 亚洲男人7777| 日韩成人中文电影| 欧美激情久久久| 久久精品视频播放| 久久久av亚洲男天堂| 69av视频在线播放| 日韩中文字幕精品视频| www.亚洲一区| 国产成+人+综合+亚洲欧洲| 日韩电影中文字幕| 一区二区福利视频| 欧美日韩精品国产| 亚洲欧美在线免费| 中文字幕国产精品久久| 欧美日韩国产成人在线观看| 精品女同一区二区三区在线播放| 蜜月aⅴ免费一区二区三区| 久久久久国产精品www| 亚洲成人激情在线观看| 中文字幕亚洲国产| 2019亚洲男人天堂| 亚洲国产成人91精品| 国产亚洲人成网站在线观看| 91美女片黄在线观看游戏| 亚洲一区二区三区视频| 欧美性猛交xxxx久久久| 亚洲在线观看视频| 久久久精品欧美| 成人福利在线视频| 色综合天天综合网国产成人网| 欧美激情一区二区三区久久久| 国产日韩精品入口| 欧美午夜视频一区二区| 中文字幕欧美视频在线| 91社影院在线观看| 色伦专区97中文字幕| 成人黄色av免费在线观看| 日韩成人xxxx| 国产一区二区三区在线播放免费观看| 国产69精品久久久| 亚洲天堂一区二区三区| 国产亚洲精品久久久久久777| 国产精品69久久久久| 中文字幕久久久| 欧美精品免费在线| 成人免费视频在线观看超级碰| 久久色在线播放| 国产成人av网址| 成人免费在线视频网址| 中文字幕亚洲欧美日韩在线不卡| 国产精品a久久久久久| 91久久久久久久久久久| 久久久久久久久久av| 国产精品一区二区久久久| 中文字幕日韩av| 国产视频欧美视频| 亚洲电影在线观看| 日韩成人激情在线| 92裸体在线视频网站| 狠狠躁夜夜躁人人爽天天天天97| 精品国产福利视频| 91福利视频在线观看| 国产成人91久久精品| 中文欧美在线视频| 在线电影av不卡网址| 91地址最新发布| 亚洲乱码国产乱码精品精天堂| 欧美激情精品久久久久久蜜臀| 亚洲精品欧美一区二区三区| 中文字幕精品视频| 亚洲国产成人精品久久| 国产一区二区三区在线免费观看| 狠狠色狠狠色综合日日五| 亚洲成人av资源网| 91九色精品视频| 国产精品久久久久99| 高清亚洲成在人网站天堂| 日韩在线视频免费观看高清中文| 日本精品一区二区三区在线播放视频| 久久99精品国产99久久6尤物| 精品国产网站地址| 精品国产一区二区三区在线观看| 国产日本欧美一区二区三区在线| 日韩精品在线观看一区二区| 欧美激情视频播放| 国产精品99一区| 91精品国产91久久久| 成人h猎奇视频网站| 久久久久久网站| 色综合天天狠天天透天天伊人| 一本久久综合亚洲鲁鲁| 亚洲影院污污.| 国产福利视频一区| 91精品国产综合久久香蕉| 国产精品久久97| 国产精品ⅴa在线观看h| 色婷婷综合成人av| 成人在线视频福利| 亚洲的天堂在线中文字幕| 久久久噜噜噜久噜久久| 精品调教chinesegay| 91地址最新发布| 久久久精品一区二区三区| 91精品久久久久久久久久另类| 欧美激情一区二区三级高清视频| 欧美另类老女人| 亚洲国产精彩中文乱码av在线播放| 精品久久久一区二区| 懂色av影视一区二区三区| www.亚洲人.com| 久久亚洲综合国产精品99麻豆精品福利| 在线观看日韩专区| 日韩欧美亚洲成人| 亚洲第一区第一页| 日韩美女在线看| 国产经典一区二区| 亚洲电影av在线| 国产一区二区视频在线观看| 欧美精品生活片| 国产福利成人在线| 亚洲国产97在线精品一区| 亚洲男人av在线| 最近2019中文字幕大全第二页| 欧美一级视频在线观看| 91日韩在线播放| 日韩免费在线免费观看| 最近2019中文字幕在线高清| 国产美女精品免费电影| 精品一区电影国产| 欧美成人精品xxx| 午夜精品久久久久久久白皮肤| 91亚洲精品在线观看| 91在线中文字幕| 欧美成人高清视频| 欧美大成色www永久网站婷| 色香阁99久久精品久久久| 国产精品va在线播放|