Использование nginx 1.7 & PHP (структура Laravel) для извлечения 1+ миллионов строк из базы данных PostgreSQL вызывает отображение ошибки 500 в течение 10 секунд.nginx HTTP Ошибка 500 при извлечении 1 миллиона строк
HTTP Error 500 (Internal Server Error): An unexpected condition was encountered while the server was attempting to fulfill the request.
Я уже установить некоторые таймауты быть длиннее и перезагружена Nginx, но он не работает. Какие настройки будут препятствовать этому таймауту?
сайты с поддержкой
location ~ \.php$ {
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_read_timeout 6000;
fastcgi_send_timeout 6000;
client_body_timeout 6000;
send_timeout 6000;
proxy_read_timeout 6000;
}
Вы уверены, что тайм-аут находится в 'nginx', а не в PostgreSQL или FastCGI? NginX должен дать вам ошибку 504, а не ошибку 500. Попробуйте загрузить ту же страницу без NginX и посмотреть, что произойдет. Однако также проверьте директиву 'client_header_timeout', на всякий случай. – LSerni
Я могу получить все строки 1M из PostgreSQL с помощью программного обеспечения pgAdmin3, поэтому PostgreSQL не является одним из тайм-аутов. Установите 'client_header_timeout 6000', и я все равно получаю ту же ошибку 500. Как мне настроить тайм-ауты FastCGI? – Nyxynyx
pgAdmin3, скорее всего, обработает эти линии иначе, чем Laravel. Можете ли вы получить доступ к странице Laravel в обход «nginx»? В любом случае, см. Предварительный ответ ниже для возможных подсказок и способов продолжения. – LSerni