504 Gateway timeout / 502 Bad gateway after install php curl - server nginx
我有(很好)一個帶有 nginx 的工作伺服器。伺服器(專用)僅用於託管 drupal 站點。
最近我們決定在上面開設一個 magento 商店並開始準備。由於 magento 和 nginx 不能開箱即用,我們必須將 nginx 升級到最新版本。一切似乎都正常。
昨天我安裝了 php5-curl (由 magento 要求)並且.. 事情變糟了。(儘管在 curl.ini 中註釋掉一行並不能解決任何問題)
每次訪問 php 站點的嘗試(drupal 或 magento 或自定義腳本都以:
504網關超時
所以我開始用Google搜尋,找到大量主題,遵循一堆建議,但似乎沒有任何效果。
當我嘗試修改 nginx 設置時(例如添加:
location ~ \.php$ { try_files $uri =404; include /etc/nginx/fastcgi_params; fastcgi_read_timeout 300; fastcgi_pass 127.0.0.1:9000; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_nam$ }
504 錯誤更改為
502錯誤的網關
和 nginx 錯誤日誌:對於 504 錯誤:
2014/11/20 13:17:56
$$ error $$20800#0:*27 上游超時(110:連接超時)同時從上游讀取響應頭,客戶端:…,服務 r:www.(…),請求:“GET(..)/ HTTP/1.1”,上游:“fastcgi://127.0.0.1: 9000”,主機:“…”
對於 502 錯誤:
19620#0:*84 recv() 在從上游讀取響應標頭時失敗(104:對等方重置連接),客戶端:(…),服務 r:(…),請求:“GET(… ) HTTP/1.1",上游:“fa stcgi://127.0.0.1:9000”,主機:"(…)"
additionally netstat shows this: root@ns394907:/etc/nginx# netstat | grep 9000 tcp 0 0 localhost.localdom:9000 localhost.localdo:35872 SYN_RECV tcp 0 0 localhost.localdom:9000 localhost.localdo:35870 SYN_RECV tcp 0 0 localhost.localdom:9000 localhost.localdo:35871 SYN_RECV tcp 0 0 localhost.localdom:9000 localhost.localdo:35874 SYN_RECV tcp 0 0 localhost.localdom:9000 localhost.localdo:35873 SYN_RECV tcp 753 0 localhost.localdom:9000 localhost.localdo:35138 CLOSE_WAIT tcp 649 0 localhost.localdom:9000 localhost.localdo:35181 CLOSE_WAIT tcp 857 0 localhost.localdom:9000 localhost.localdo:35192 CLOSE_WAIT tcp 641 0 localhost.localdom:9000 localhost.localdo:35071 CLOSE_WAIT tcp 1305 0 localhost.localdom:9000 localhost.localdo:35149 CLOSE_WAIT tcp 1273 0 localhost.localdom:9000 localhost.localdo:35127 CLOSE_WAIT tcp 1121 0 localhost.localdom:9000 localhost.localdo:35130 CLOSE_WAIT tcp 769 0 localhost.localdom:9000 localhost.localdo:35171 CLOSE_WAIT tcp 737 0 localhost.localdom:9000 localhost.localdo:35175 CLOSE_WAIT tcp 761 0 localhost.localdom:9000 localhost.localdo:35205 CLOSE_WAIT tcp 1305 0 localhost.localdom:9000 localhost.localdo:35147 CLOSE_WAIT tcp 721 0 localhost.localdom:9000 localhost.localdo:35200 CLOSE_WAIT tcp 705 0 localhost.localdom:9000 localhost.localdo:35065 CLOSE_WAIT tcp 0 857 localhost.localdo:35868 localhost.localdom:9000 FIN_WAIT1 tcp 1185 0 localhost.localdom:9000 localhost.localdo:35197 CLOSE_WAIT tcp 681 0 localhost.localdom:9000 localhost.localdo:35121 CLOSE_WAIT tcp 777 0 localhost.localdom:9000 localhost.localdo:35195 CLOSE_WAIT tcp 865 0 localhost.localdom:9000 localhost.localdo:35198 CLOSE_WAIT tcp 1185 0 localhost.localdom:9000 localhost.localdo:35152 CLOSE_WAIT tcp 753 0 localhost.localdom:9000 localhost.localdo:35136 CLOSE_WAIT tcp 729 0 localhost.localdom:9000 localhost.localdo:35206 CLOSE_WAIT tcp 0 1017 localhost.localdo:35870 localhost.localdom:9000 FIN_WAIT1 tcp 1329 0 localhost.localdom:9000 localhost.localdo:35074 CLOSE_WAIT tcp 1273 0 localhost.localdom:9000 localhost.localdo:35125 CLOSE_WAIT tcp 761 0 localhost.localdom:9000 localhost.localdo:35122 CLOSE_WAIT tcp 1273 0 localhost.localdom:9000 localhost.localdo:35124 CLOSE_WAIT tcp 873 0 localhost.localdom:9000 localhost.localdo:35100 CLOSE_WAIT tcp 857 0 localhost.localdom:9000 localhost.localdo:35202 CLOSE_WAIT tcp 729 0 localhost.localdom:9000 localhost.localdo:35186 CLOSE_WAIT tcp 697 0 localhost.localdom:9000 localhost.localdo:35081 CLOSE_WAIT tcp 1097 0 localhost.localdom:9000 localhost.localdo:35139 CLOSE_WAIT tcp 753 0 localhost.localdom:9000 localhost.localdo:35115 CLOSE_WAIT tcp 761 0 localhost.localdom:9000 localhost.localdo:35094 CLOSE_WAIT tcp 649 0 localhost.localdom:9000 localhost.localdo:35064 CLOSE_WAIT tcp 1185 0 localhost.localdom:9000 localhost.localdo:35207 CLOSE_WAIT tcp 769 0 localhost.localdom:9000 localhost.localdo:35083 CLOSE_WAIT tcp 849 0 localhost.localdom:9000 localhost.localdo:35165 CLOSE_WAIT tcp 617 0 localhost.localdom:9000 localhost.localdo:35077 CLOSE_WAIT tcp 0 728 localhost.localdo:35871 localhost.localdom:9000 ESTABLISHED tcp 857 0 localhost.localdom:9000 localhost.localdo:35204 CLOSE_WAIT tcp 689 0 localhost.localdom:9000 localhost.localdo:35089 CLOSE_WAIT tcp 761 0 localhost.localdom:9000 localhost.localdo:35093 CLOSE_WAIT tcp 769 0 localhost.localdom:9000 localhost.localdo:35090 CLOSE_WAIT tcp 0 688 localhost.localdo:35872 localhost.localdom:9000 ESTABLISHED tcp 697 0 localhost.localdom:9000 localhost.localdo:35146 CLOSE_WAIT tcp 849 0 localhost.localdom:9000 localhost.localdo:35159 CLOSE_WAIT tcp 641 0 localhost.localdom:9000 localhost.localdo:35184 CLOSE_WAIT tcp 657 0 localhost.localdom:9000 localhost.localdo:35158 CLOSE_WAIT tcp 1097 0 localhost.localdom:9000 localhost.localdo:35141 CLOSE_WAIT tcp 801 0 localhost.localdom:9000 localhost.localdo:35073 CLOSE_WAIT tcp 1217 0 localhost.localdom:9000 localhost.localdo:35153 CLOSE_WAIT tcp 705 0 localhost.localdom:9000 localhost.localdo:35068 CLOSE_WAIT tcp 1209 0 localhost.localdom:9000 localhost.localdo:35129 CLOSE_WAIT tcp 737 0 localhost.localdom:9000 localhost.localdo:35203 CLOSE_WAIT tcp 753 0 localhost.localdom:9000 localhost.localdo:35166 CLOSE_WAIT tcp 633 0 localhost.localdom:9000 localhost.localdo:35164 CLOSE_WAIT tcp 689 0 localhost.localdom:9000 localhost.localdo:35107 CLOSE_WAIT tcp 705 0 localhost.localdom:9000 localhost.localdo:35110 CLOSE_WAIT tcp 1337 0 localhost.localdom:9000 localhost.localdo:35131 CLOSE_WAIT tcp 689 0 localhost.localdom:9000 localhost.localdo:35085 CLOSE_WAIT tcp 641 0 localhost.localdom:9000 localhost.localdo:35187 CLOSE_WAIT tcp 1105 0 localhost.localdom:9000 localhost.localdo:35098 CLOSE_WAIT tcp 881 0 localhost.localdom:9000 localhost.localdo:35097 CLOSE_WAIT tcp 1273 0 localhost.localdom:9000 localhost.localdo:35126 CLOSE_WAIT tcp 865 0 localhost.localdom:9000 localhost.localdo:35079 CLOSE_WAIT tcp 769 0 localhost.localdom:9000 localhost.localdo:35109 CLOSE_WAIT tcp 1257 0 localhost.localdom:9000 localhost.localdo:35155 CLOSE_WAIT tcp 809 0 localhost.localdom:9000 localhost.localdo:35189 CLOSE_WAIT tcp 745 0 localhost.localdom:9000 localhost.localdo:35087 CLOSE_WAIT tcp 0 817 localhost.localdo:35869 localhost.localdom:9000 FIN_WAIT1 tcp 825 0 localhost.localdom:9000 localhost.localdo:35143 CLOSE_WAIT tcp 737 0 localhost.localdom:9000 localhost.localdo:35067 CLOSE_WAIT tcp 1073 0 localhost.localdom:9000 localhost.localdo:35157 CLOSE_WAIT tcp 1137 0 localhost.localdom:9000 localhost.localdo:35137 CLOSE_WAIT tcp 745 0 localhost.localdom:9000 localhost.localdo:35178 CLOSE_WAIT tcp 1321 0 localhost.localdom:9000 localhost.localdo:35156 CLOSE_WAIT tcp 1305 0 localhost.localdom:9000 localhost.localdo:35148 CLOSE_WAIT tcp 753 0 localhost.localdom:9000 localhost.localdo:35092 CLOSE_WAIT tcp 1209 0 localhost.localdom:9000 localhost.localdo:35150 CLOSE_WAIT tcp 729 0 localhost.localdom:9000 localhost.localdo:35193 CLOSE_WAIT tcp 9 0 localhost.localdom:9000 localhost.localdo:39387 CLOSE_WAIT tcp 873 0 localhost.localdom:9000 localhost.localdo:35084 CLOSE_WAIT tcp 689 0 localhost.localdom:9000 localhost.localdo:35106 CLOSE_WAIT tcp 729 0 localhost.localdom:9000 localhost.localdo:35168 CLOSE_WAIT tcp 873 0 localhost.localdom:9000 localhost.localdo:35188 CLOSE_WAIT tcp 777 0 localhost.localdom:9000 localhost.localdo:35075 CLOSE_WAIT tcp 857 0 localhost.localdom:9000 localhost.localdo:35160 CLOSE_WAIT tcp 737 0 localhost.localdom:9000 localhost.localdo:35080 CLOSE_WAIT tcp 889 0 localhost.localdom:9000 localhost.localdo:35082 CLOSE_WAIT tcp 705 0 localhost.localdom:9000 localhost.localdo:35111 CLOSE_WAIT tcp 1241 0 localhost.localdom:9000 localhost.localdo:35191 CLOSE_WAIT tcp 857 0 localhost.localdom:9000 localhost.localdo:35167 CLOSE_WAIT tcp 785 0 localhost.localdom:9000 localhost.localdo:35091 CLOSE_WAIT tcp 1121 0 localhost.localdom:9000 localhost.localdo:35132 CLOSE_WAIT tcp 761 0 localhost.localdom:9000 localhost.localdo:35145 CLOSE_WAIT tcp 1057 0 localhost.localdom:9000 localhost.localdo:35116 CLOSE_WAIT tcp 825 0 localhost.localdom:9000 localhost.localdo:35112 CLOSE_WAIT tcp 1241 0 localhost.localdom:9000 localhost.localdo:35172 CLOSE_WAIT tcp 993 0 localhost.localdom:9000 localhost.localdo:35194 CLOSE_WAIT tcp 729 0 localhost.localdom:9000 localhost.localdo:35163 CLOSE_WAIT tcp 1273 0 localhost.localdom:9000 localhost.localdo:35123 CLOSE_WAIT tcp 753 0 localhost.localdom:9000 localhost.localdo:35173 CLOSE_WAIT tcp 641 0 localhost.localdom:9000 localhost.localdo:35072 CLOSE_WAIT tcp 1273 0 localhost.localdom:9000 localhost.localdo:35128 CLOSE_WAIT tcp 785 0 localhost.localdom:9000 localhost.localdo:35102 CLOSE_WAIT tcp 737 0 localhost.localdom:9000 localhost.localdo:35069 CLOSE_WAIT tcp 681 0 localhost.localdom:9000 localhost.localdo:35108 CLOSE_WAIT tcp 665 0 localhost.localdom:9000 localhost.localdo:35078 CLOSE_WAIT tcp 913 0 localhost.localdom:9000 localhost.localdo:35140 CLOSE_WAIT tcp 873 0 localhost.localdom:9000 localhost.localdo:35095 CLOSE_WAIT tcp 10233 0 localhost.localdom:9000 localhost.localdo:35151 CLOSE_WAIT tcp 697 0 localhost.localdom:9000 localhost.localdo:35113 CLOSE_WAIT tcp 1137 0 localhost.localdom:9000 localhost.localdo:35154 CLOSE_WAIT tcp 849 0 localhost.localdom:9000 localhost.localdo:35070 CLOSE_WAIT tcp 849 0 localhost.localdom:9000 localhost.localdo:35104 CLOSE_WAIT tcp 673 0 localhost.localdom:9000 localhost.localdo:35169 CLOSE_WAIT tcp 737 0 localhost.localdom:9000 localhost.localdo:35185 CLOSE_WAIT tcp 881 0 localhost.localdom:9000 localhost.localdo:35161 CLOSE_WAIT tcp 857 0 localhost.localdom:9000 localhost.localdo:35183 CLOSE_WAIT tcp 905 0 localhost.localdom:9000 localhost.localdo:35176 CLOSE_WAIT tcp 601 0 localhost.localdom:9000 localhost.localdo:35120 CLOSE_WAIT tcp 881 0 localhost.localdom:9000 localhost.localdo:35096 CLOSE_WAIT tcp 737 0 localhost.localdom:9000 localhost.localdo:35199 CLOSE_WAIT tcp 889 0 localhost.localdom:9000 localhost.localdo:35086 CLOSE_WAIT tcp 737 0 localhost.localdom:9000 localhost.localdo:35174 CLOSE_WAIT tcp 1305 0 localhost.localdom:9000 localhost.localdo:35133 CLOSE_WAIT tcp 1305 0 localhost.localdom:9000 localhost.localdo:35144 CLOSE_WAIT tcp 873 0 localhost.localdom:9000 localhost.localdo:35099 CLOSE_WAIT tcp 897 0 localhost.localdom:9000 localhost.localdo:35170 CLOSE_WAIT tcp 873 0 localhost.localdom:9000 localhost.localdo:35103 CLOSE_WAIT tcp 0 1008 localhost.localdo:35874 localhost.localdom:9000 ESTABLISHED tcp 913 0 localhost.localdom:9000 localhost.localdo:35135 CLOSE_WAIT tcp 1273 0 localhost.localdom:9000 localhost.localdo:35182 CLOSE_WAIT tcp 0 872 localhost.localdo:35873 localhost.localdom:9000 ESTABLISHED tcp 905 0 localhost.localdom:9000 localhost.localdo:35117 CLOSE_WAIT tcp 633 0 localhost.localdom:9000 localhost.localdo:35180 CLOSE_WAIT tcp 1105 0 localhost.localdom:9000 localhost.localdo:35134 CLOSE_WAI
希望任何人都可以提供幫助,因為受影響的 drupal 站點/商店對我的公司至關重要。
謝謝!
編輯:
/etc/nginx# nginx -V nginx version: nginx/1.6.2 TLS SNI support enabled configure arguments: --with-cc-opt='-g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Wformat-security -Werror=format-security -D_FORTIFY_SOURCE=2' --with-ld-opt='-Wl,-Bsymbolic-functions -Wl,-z,relro' --prefix=/usr/share/nginx --conf-path=/etc/nginx/nginx.conf --http-log-path=/var/log/nginx/access.log --error-log-path=/var/log/nginx/error.log --lock-path=/var/lock/nginx.lock --pid-path=/run/nginx.pid --http-client-body-temp-path=/var/lib/nginx/body --http-fastcgi-temp-path=/var/lib/nginx/fastcgi --http-proxy-temp-path=/var/lib/nginx/proxy --http-scgi-temp-path=/var/lib/nginx/scgi --http-uwsgi-temp-path=/var/lib/nginx/uwsgi --with-debug --with-pcre-jit --with-ipv6 --with-http_ssl_module --with-http_stub_status_module --with-http_realip_module --with-http_auth_request_module --with-http_addition_module --with-http_dav_module --with-http_geoip_module --with-http_gzip_static_module --with-http_image_filter_module --with-http_spdy_module --with-http_sub_module --with-http_xslt_module --with-mail --with-mail_ssl_module --add-module=/build/buildd/nginx-1.6.2/debian/modules/nginx-auth-pam --add-module=/build/buildd/nginx-1.6.2/debian/modules/nginx-dav-ext-module --add-module=/build/buildd/nginx-1.6.2/debian/modules/nginx-echo --add-module=/build/buildd/nginx-1.6.2/debian/modules/nginx-upstream-fair --add-module=/build/buildd/nginx-1.6.2/debian/modules/ngx_http_substitutions_filter_module
編輯:這個解決方案現在有效:https ://stackoverflow.com/a/14560181/1214002
你可以試試這些;但我不確定這些是否會幫助
CLOSE_WAIT
我使用以下來幫助我處理TIME_WAIT
狀態中的一堆連接sysctl -w net.ipv4.tcp_tw_reuse=1 sysctl -w net.ipv4.tcp_tw_recycle=1
檢查當您改用
fastcgi_pass
unix 套接字時是否有任何好處,例如
fastcgi_pass unix:/tmp/php.sock
為此,您需要更新 php 配置以偵聽 unix 套接字而不是 IP 套接字
另一個與您類似的問題: Nginx + php-fpm “504 Gateway Time-out” 幾乎為零負載的錯誤(在測試伺服器上)建議通過調整來限制 php 執行時間
request_terminate_timeout=30s
在 php 快速 cgi / php-fpm 配置中。