Как исправить время ожидания шлюза на AWS сервере Lightsail? - PullRequest
0 голосов
/ 17 февраля 2020

Я создал приложение codeigniter на AWS с Lightsail, которое запрашивает большой объем данных из старой базы данных magento, конвертирует в новый формат и передает его в мою новую базу данных.

Приложение хорошо работает на моей локальной машине под localhost, но при развертывании на AWS я сталкиваюсь с ошибкой Gateway Timeout. Я полагаю, что это потому, что мой локальный сервер готов ждать ответа от другого сервера дольше, чем мой AWS.

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

Я пробовал это, но без игры в кости:

set_time_limit(0);
error_reporting(E_ALL);
ob_implicit_flush(TRUE);
ob_end_flush();

Я тоже пытался безрезультатно:

ini_set('max_execution_time', 0);

Оба были помещены в конструктор для моей модели. Если какое-либо из этих решений работает, было ли это неправильным местом для размещения кода?

РЕДАКТИРОВАТЬ: я должен также упомянуть, что это сервер Bitnami, работающий в Ubuntu.

1 Ответ

0 голосов
/ 20 февраля 2020

Для будущих поколений вам нужно отредактировать таймаут в php -fpm- apache .conf. Это на линии

<Proxy "unix:/opt/bitnami/php/var/run/www.sock|fcgi://www-fpm" timeout=900>

Если вы не знаете, где это, просто используйте

sudo find / -iname php-fpm-apache.conf

в консоли. Моя шахта оказалась в / opt / bitnami / apache2 / conf /

Обязательно перезапустите apache и php -fpm с

sudo /opt/bitnami/ctlscript.sh restart php-fpm
sudo /opt/bitnami/ctlscript.sh restart apache

И вы будете в порядке до go!

...