Назад | Перейти на главную страницу

504 Тайм-аут шлюза / 502 неверный шлюз после установки php curl - сервер nginx

У меня есть (хорошо) рабочий сервер с nginx на борту. Сервер (выделенный) использовался только для размещения сайта drupal.

Недавно мы решили разместить на нем магазин Magento и начали подготовку. Поскольку magento и nginx изначально не работали вместе, нам пришлось обновить nginx до последней версии. Казалось, все работает нормально.

Вчера я установил php5-curl (который регулируется magento) и .. все пошло не так. (хотя комментирование строки в curl.ini ничего не решает)

Каждая попытка посетить php-сайт (drupal, magento или пользовательский скрипт заканчивалась в:

Ошибка 504 Время ответа сервера истекло

Итак, я начал гуглить, набирал множество тем, следил за кучей советов, но, похоже, ничего не работает.

Когда я пытаюсь изменить настройку 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 [ошибка] 20800 # 0: * 27 тайм-аут восходящего потока (110: тайм-аут соединения) при чтении заголовка ответа от восходящего потока, клиент: ..., serve 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 fast cgi / php-fpm.