Как исправить ошибку 502 Bad Gateway на Nginx

Как исправить ошибку 502 Bad Gateway на Nginx

 

В этом руководстве мы покажем вам, как исправить 502 ошибки неверного шлюза на веб-сервере Nginx. Если вы запускаете веб-сервер Nginx, вы, возможно, уже столкнулись с досадной ошибкой 502 плохого шлюза. Это довольно распространенная ошибка, скорее всего, вызванная настройками буфера PHP или FastCGI и тайм-аутов. Из этого туториала Вы узнаете, как исправить плохой шлюз Nginx 502 на веб-сервере Nginx. В этом сообщении показано, как решить эту проблему, а также параметры конфигурации, чтобы предотвратить ее повторное появление при перезагрузке.

В этой статье предполагается, что у вас есть хотя бы базовые знания Linux, вы знаете, как использовать оболочку, и, что наиболее важно, вы размещаете свой сайт на собственном VPS. Установка довольно проста и предполагает, что вы работаете с учетной записью root, в противном случае вам может потребоваться добавить ‘ sudo‘ к командам для получения привилегий root. Я покажу вам пошаговое решение ошибки 502 неверного шлюза на веб-сервере Nginx.

Исправить ошибку 502 Bad Gateway на Nginx

Шаг 1. Сначала проверьте журнал данных веб-сервера Nginx.

Вы можете более подробно увидеть, что конкретно влечет за собой ошибка, перейдя в файл журнала ошибок вашего веб-сервера. Вся информация об ошибках и диагностическая информация хранится в этом файле, что делает его ценным ресурсом для проверки, когда вам нужны дополнительные сведения о конкретной ошибке. Вы можете найти этот файл в Nginx, перейдя в ./var/log/nginx/error.log

Шаг 2. Решите 502 проблемы со шлюзом.

  • Метод 1. Изменения в Nginx Config.

Выполните следующую команду, чтобы отредактировать Nginx conf:

sudo nano /etc/nginx/nginx.conf
http {
    ...
    fastcgi_buffers 8 16k;
    fastcgi_buffer_size 32k;
    ...
}

После этого перезапустите службу Nginx, чтобы вступили в силу:

sudo nginx -t
sudo systemctl restart nginx
  • Метод 2. Измените PHP-FPM для прослушивания сокета Unix или сокета TCP.
nano /etc/php-fpm.d/www.conf
listen = /var/run/php5-fpm.sock

To:

listen = 127.0.0.1:9000

После этого перезапустите PHP-FPM, чтобы изменить эффект:

sudo systemctl restart php-fpm

Если вы настраиваете php-fpm для прослушивания сокета Unix, вы также должны проверить, что у файла сокета есть правильный владелец и разрешения.

chmod 0660 /var/run/php5-fpm.sock
chown www-data:www-data /var/run/php5-fpm.sock
  • Метод 3. Отключить APC.

Кэширование APC может вызвать проблемы 502 Bad Gateway в определенных средах, вызывая ошибки сегментации. Я настоятельно рекомендую использовать Memcache (d), но XCache также является хорошей альтернативой.

Поздравляю! Вы успешно решили 502 проблемы со шлюзом. Благодарим за использование этого руководства для исправления 502 проблем со шлюзом в системе Linux. Для получения дополнительной помощи или полезной информации мы рекомендуем вам посетить официальный сайт Nginx .

Author: forgero