FAQ. Ошибки "502 Bad Gateway и 504 Gateway Time-out": различия между версиями

Материал из WiKi - UserSide
Нет описания правки
Нет описания правки
 
(не показано 29 промежуточных версий 2 участников)
Строка 1: Строка 1:
Во время работы, вы можете столкнуться с возникновением ошибки ''''504 Gateway Time-out'''':
[[FAQ._Errors_"502_Bad_Gateway_and_504_Gateway_Time-out"|en]] | [[FAQ._Ошибки_"502_Bad_Gateway_и_504_Gateway_Time-out"|ru]]


[[Файл:504_Gateway_Time-out.png|thumb|1200px|center]]
Во время работы, вы можете столкнуться с возникновением ошибок ''''502 Bad Gateway'''' и ''''504 Gateway Time-out'''':


Данная ошибка - это код состояния HTTP, один из стандартных ответов сервера на запрос браузера.
[[Файл:502_Bad_Gateway.png|thumb|1200px|center]]


Зачастую данная ошибка возникает при выполнении запроса для получения "Списка подключённых ONU/ONT". Длительность его выполнения зависит от колличества ONU находящихся на OLT и может достигать вплоть до 10 минут. Но так же может возникать и при других запросах.
[[Файл:504_Gateway_Time-out.png|thumb|1000px|center]]


Основной причиной возникновения ошибки ''''504 Gateway Time-out'''' являются недостаточные значения для таймаутов.
Данные ошибки - это коды состояния HTTP, один из стандартных ответов сервера на запрос браузера.


Если, вы при выполнении запроса получили данную ошибку, вам необходио проверить выставленные у вас таймауты в настройках:
Зачастую данные ошибки возникает при выполнении запроса для получения "Списка подключённых ONU". Длительность его выполнения зависит от колличества ONU находящихся на OLT и может достигать вплоть до 10 минут. Но так же может возникать и при других запросах.


Основной причиной возникновения ошибок ''''502 Bad Gateway'''' и ''''504 Gateway Time-out'''' являются недостаточные значения для таймаутов.


'''1) php.ini'''
Если, вы при выполнении запроса получили кукую-то из данных ошибок, вам необходио проверить выставленные у вас таймауты в настройках. И изменить их значения до необходимых.


* Параметры:
Ниже приведены примеры по выполнению их изменения:


max_execution_time = xxx


  max_input_time = xxx
'''1) php.ini и PHP-FPM Pool'''


* Расположение:
* Далее приведены команды вносящие изменения в файлы конфигурации, увеличивающие таймауты до 180 секунд:


Для CLI:
sudo sed -i "s@max_execution_time.*@max_execution_time = 180@" /etc/php/7.4/fpm/php.ini
sudo sed -i "s@max_input_time.*@max_input_time = 180@" /etc/php/7.4/fpm/php.ini
sudo sed -i 's@;request_terminate_timeout.*@request_terminate_timeout = 180@' /etc/php/7.4/fpm/pool.d/www.conf
sudo systemctl restart php7.4-fpm


/etc/php/[VERSION]/cli/php.ini


Для FPM:
После перезапуска службы php-fpm необходимо проверить, что внесенные изменения вступили в силу.


/etc/php/[VERSION]/fpm/php.ini
Это можно сделать на странице USERSIDE: '''Меню — Настройки — Основная — Разное — phpinfo()'''.




'''2) PHP-FPM'''
[[Файл:2023-02-24_15-53.png|thumb|1200px|center]]


* Параметр:


request_terminate_timeout = xxx
'''2) NGINX config'''


* Расположение:
* В настройке server для userside для блока <code>location ~ \.php$</code> необходимо изменить значение увеличивающий таймаут до 180 секунд и перезапустить NGINX:


  /etc/php[VERSION]/fpm/pool.d/www.conf
  fastcgi_read_timeout = 180


sudo nginx -t && sudo nginx -s reload


После внесенных именений, '''обязательно''' необходимо перезапустить службу, для того что-бы новые значения применились.
''* По умолчанию задан такой путь - /etc/nginx/conf.d/default.conf (если использовалась стандартная инструкция при установке).  Отредактируйте значение в необходимом файле конфигурации, если у вас на сервере несколько сайтов и вы производили настройку с данным учетом.''
 
service php-fpm restart              #Используя service wrapper script
 
systemctl restart php-fpm.service    #Используя systemd
 
''* Добавьте '''sudo''', если вы не '''root'''.''
 
 
'''3) NGINX config'''
 
* Параметр:
 
fastcgi_read_timeout = xxx
 
* Расположение:
 
/etc/nginx/conf.d/default.conf  
 
''* По умолчанию данный файл размещается в этом каталоге (если использовалась стандартная инструкция при установке).  Но так же, может быть файл с другим произвольным именем, если у вас на сервере несколько сайтов и вы производили настройку с данным учетом.''
 
 
После внесенных именений, '''обязательно''' необходимо перезапустить службу, для того что-бы новые значения применились.
 
service nginx restart      #Используя service wrapper script
 
systemctl restart nginx    #Используя systemd
 
''* Добавьте '''sudo''', если вы не '''root'''.''

Текущая версия от 18:36, 22 декабря 2023

en | ru

Во время работы, вы можете столкнуться с возникновением ошибок '502 Bad Gateway' и '504 Gateway Time-out':

Данные ошибки - это коды состояния HTTP, один из стандартных ответов сервера на запрос браузера.

Зачастую данные ошибки возникает при выполнении запроса для получения "Списка подключённых ONU". Длительность его выполнения зависит от колличества ONU находящихся на OLT и может достигать вплоть до 10 минут. Но так же может возникать и при других запросах.

Основной причиной возникновения ошибок '502 Bad Gateway' и '504 Gateway Time-out' являются недостаточные значения для таймаутов.

Если, вы при выполнении запроса получили кукую-то из данных ошибок, вам необходио проверить выставленные у вас таймауты в настройках. И изменить их значения до необходимых.

Ниже приведены примеры по выполнению их изменения:


1) php.ini и PHP-FPM Pool

  • Далее приведены команды вносящие изменения в файлы конфигурации, увеличивающие таймауты до 180 секунд:
sudo sed -i "s@max_execution_time.*@max_execution_time = 180@" /etc/php/7.4/fpm/php.ini
sudo sed -i "s@max_input_time.*@max_input_time = 180@" /etc/php/7.4/fpm/php.ini
sudo sed -i 's@;request_terminate_timeout.*@request_terminate_timeout = 180@' /etc/php/7.4/fpm/pool.d/www.conf

sudo systemctl restart php7.4-fpm


После перезапуска службы php-fpm необходимо проверить, что внесенные изменения вступили в силу.

Это можно сделать на странице USERSIDE: Меню — Настройки — Основная — Разное — phpinfo().



2) NGINX config

  • В настройке server для userside для блока location ~ \.php$ необходимо изменить значение увеличивающий таймаут до 180 секунд и перезапустить NGINX:
fastcgi_read_timeout = 180
sudo nginx -t && sudo nginx -s reload

* По умолчанию задан такой путь - /etc/nginx/conf.d/default.conf (если использовалась стандартная инструкция при установке). Отредактируйте значение в необходимом файле конфигурации, если у вас на сервере несколько сайтов и вы производили настройку с данным учетом.