Время ожидания PHP-шлюза

Время ожидания PHP-шлюза

Мне нужно сделать выполнение PHP более длительным, и все остальное может быть проблемой. Я думал, что уже сделал это, но я все еще получаю тайм-ауты шлюза из моей недавней установки WordPress. Пул php-fpm имеет следующую конфигурацию

[john]
user = john
group = john

listen = 127.0.0.1:9002
listen.owner = www
listen.group = www

pm = dynamic
pm.max_children = 5
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3

php_admin_value[max_execution_time] = 300
php_admin_value[max_input_time] = 120

Синтаксис в порядке, но с учетом того, что скрипты отсчитывают время около 30 секунд, интересно, что еще я упустил. Это может быть излишним, но я спешу и научусь позже, не стесняйтесь объяснять, но если кто-то может сказать мне все значения, которые я могу увеличить, чтобы решить эту проблему методом перебора, это было бы здорово.

решение1

В /etc/php5/fpm/pool.d/www.conf добавьте следующую строку:

request_terminate_timeout = 180

Также в /etc/nginx/sites-available/default добавьте следующую строку в блок расположения соответствующего сервера:

fastcgi_read_timeout 180;

Весь блок локаций выглядит так:

location ~ \.php$ {
    fastcgi_pass unix:/var/run/php5-fpm.sock;
    fastcgi_index index.php;
    fastcgi_param   SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_read_timeout 180;
    include fastcgi_params;
}

Теперь просто перезапустите php-fpm и nginx, и больше не должно быть тайм-аутов для запросов, которые занимают менее 180 секунд.

решение2

Я бы начал с установки максимального ввода и времени выполнения вручную в вашем php.ini вместо того, чтобы пытаться переопределить какие-либо настройки в php-fpm или nginx.

Связанный контент