504 Gateway Time-out
Статья поможет решить ошибку выполнения скриптов на сайте opencart.
Приятного чтения!
Заказывайте у нас разработку сайтов, настройку и сопровождение контекстной рекламы, а также поисковое продвижение.
Исходные данные:
- сайт с CMS opencart;
- ошибка в модуле csvprice_pro;
- серверная часть: php 5,6 (apache+ngix), режим работы CGI + ispmanager 5
Браузер выдает:
504 Gateway Time-out
или
The gateway did not receive a timely response from the upstream server or application
Логи на сервере выдают:
[cgi:warn] [pid 15724] [client ————] AH01220: Timeout waiting for output from CGI script /var/www/php-bin-isp-php56/www-root/php, referer: ———/admin/index.php?route=module/csvprice_pro&token=———-
[cgi:error] [pid 15724] [client ———-:47006] Script timed out before returning headers: php, referer: ——/admin/index.php?route=module/csvprice_pro&token=——
Логи опенкарта:
PHP Notice: Undefined index: count in /var/www/www-root/data/www/——-/admin/controller/module/csvprice_pro.php on line 486
PHP Notice: Undefined variable: item_count in /var/www/www-root/data/www/———/admin/controller/module/csvprice_pro.php on line 486
Решение для Timeout waiting for output from CGI script
- Заходим в ISPmanerg — закладка WWW, подзаголовок WWW-Домены;
- Выбираете ваш домен и нанимаете Конфигурация;
- Изменяем конфигурацию Apache добавив между <VirtualHost 127.0.0.1:8080> и </VirtualHost> директиву: Timeout 1800
- Меняем конфигурацию nginx, путем добавления в блок «location @fallback {…}»:
proxy_connect_timeout 1800;
proxy_send_timeout 1800;
proxy_read_timeout 1800;
send_timeout 1800;
5. Заходим в настройки вашей версии PHP (в нашем случае 5,6), выбираем «Расширенные настройки» и там меняем max_input_time и max_execution_time также на 1800;