Недавно я перенес 30 веб-сайтов со своего старого сервера на новый, и теперь они работают на nginx, как и раньше, на apache.
Все отлично работает на всех сайтах кроме 1 сайта.
Не знаю почему, но я получаю это сообщение в файле журнала /var/log/php7.2-fpm-example.log :
[09-Nov-2018 14:58:35] NOTICE: systemd monitor interval set to 10000ms
[10-Nov-2018 03:35:51] WARNING: [pool cappatrimonial] server reached max_children setting (5), consider raising it
[10-Nov-2018 06:30:09] WARNING: [pool cappatrimonial] child 4727 exited on signal 7 (SIGBUS) after 10458.281970 seconds from start
[10-Nov-2018 06:30:09] NOTICE: [pool cappatrimonial] child 13790 started
[10-Nov-2018 09:35:35] NOTICE: Terminating ...
[10-Nov-2018 09:35:35] NOTICE: exiting, bye-bye!
[10-Nov-2018 09:35:37] NOTICE: fpm is running, pid 31266
[10-Nov-2018 09:35:37] NOTICE: ready to handle connections
[10-Nov-2018 09:35:37] NOTICE: systemd monitor interval set to 10000ms
[10-Nov-2018 10:39:56] WARNING: [pool cappatrimonial] server reached max_children setting (10), consider raising it
Как видно выше, я уже увеличил max_children настройка из 5 к 10 и сообщение появляется снова. Также проблема может быть каждые 3 часа или каждые 10 часов .. логики нет.
В файле журнала ошибок nginx /var/log/nginx/example.error_log Я нашел это:
2018/11/10 09:35:35 [error] 16088#16088: *77278 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: server_ip_address, server: www.example.com, request: "GET //erreur-404 HTTP/1.1", upstream: "fastcgi://unix:/var/run/php/php7.2-fpm-example.sock:", host: "www.example.com"
2018/11/10 09:35:35 [info] 16088#16088: *77280 client server_ip_address closed keepalive connection (104: Connection reset by peer)
В чем дело ?
Ниже представлена моя конфигурация php-fpm для этого веб-сайта:
[global]
pid = /var/run/php/php7.2-fpm-example.pid
error_log = /var/log/php7.2-fpm-example.log
[example]
user = example
group = example
listen = /var/run/php/php7.2-fpm-example.sock
listen.owner = www-data
listen.group = www-data
php_admin_value[disable_functions] = exec,passthru,shell_exec,system
pm = ondemand
pm.max_children = 10
pm.process_idle_timeout = 20s
Я действительно не понимаю, почему это появляется только для этого веб-сайта, а не для других.
У тебя есть идеи, потому что я потерялся: - /?
Большое спасибо
проблема была связана с плохим скриптом php, как это было предложено @Richard Smith
Я обновил веб-сайт и теперь работает нормально.
Спасибо