Назад | Перейти на главную страницу

Установка max_execution_time для PHP7 и Nginx

Я последовал за это руководство и обновил значения:

/etc/php/7.0/fpm/php.ini и измените / добавьте это:

max_execution_time = 300

и /etc/php/7.0/fpm/pool.d/www.conf также и измените / добавьте это:

php_admin_value[max_execution_time] = 300

и /etc/nginx/sites-available/example.com, а в разделе cgi добавьте:

fastcgi_read_timeout 300;

... с последующим перезапуском, но все же:

# php -i | grep max_execution_time
max_execution_time => 0 => 0

Это блок местоположения для моего сайта:

location ~ .php$ {
    fastcgi_split_path_info ^(.+.php)(/.*)$;
    try_files $uri =404;
    fastcgi_keep_conn on;
    fastcgi_read_timeout 600;
    include /etc/nginx/fastcgi_params;
    fastcgi_pass unix:/run/php/php7.0-fpm.sock;
    fastcgi_index index.php;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}

Что делаю не так?

Когда ты бежишь php -i из командной строки он будет использовать параметры конфигурации для вашего клиента PHP CLI, которые, вероятно, находятся в /etc/php/7.0/cli/php.ini.

Если вы хотите проверить настройки своего PHP-FPM, создайте сценарий со следующим содержимым в корневом веб-каталоге:

<?php phpinfo(); ?>

Затем перейдите по URL-адресу скрипта в своем браузере.

Другая альтернатива, которая может сработать, - запустить php -b 127.0.0.1:9000 -i, который заставит PHP CLI подключиться к вашему серверу FastCGI для выполнения команды. Возможно, вам придется изменить адрес в зависимости от вашей конфигурации.