I am running Apache 2.4 to serve Nextcloud and I occasionally get the error
[proxy_fcgi:error] cloud.my-domain.tld: (70008)Partial results are valid but processing is incomplete: AH01075: Error dispatching request to : (reading input brigade)
All solutions I have found so far indicated that mod_reqtimeout
had been the problem. However, in my case mod_reqtimeout
is not enabled and not (statically) built into Apache.
What can cause this error and/or how to debug the root cause? I already increased the log level to "debug" but do not see any suspicious.
The log:
Mar 13 14:47:50 server apache[742310]: [proxy:debug] cloud.my-domain.tld: AH01143: Running scheme unix handler (attempt 0) Mar 13 14:47:50 server apache[742310]: [proxy_fcgi:debug] cloud.my-domain.tld: AH01076: url: fcgi://php//var/www/my-domain.tld/nextcloud/ocs/v2.php proxyname: (null) proxyport: 0 Mar 13 14:47:50 server apache[742310]: [proxy_fcgi:debug] cloud.my-domain.tld: AH01078: serving URL fcgi://php//var/www/my-domain.tld/nextcloud/ocs/v2.php Mar 13 14:47:50 server apache[742310]: [proxy:debug] cloud.my-domain.tld: AH00942: FCGI: has acquired connection for (php:8000) Mar 13 14:47:50 server apache[742310]: [proxy:debug] cloud.my-domain.tld: AH00944: connecting fcgi://php//var/www/my-domain.tld/nextcloud/ocs/v2.php to php:8000 Mar 13 14:47:50 server apache[742310]: [proxy:debug] cloud.my-domain.tld: AH02545: fcgi: has determined UDS as /run/php-fpm/www.sock Mar 13 14:47:50 server apache[742310]: [proxy:debug] cloud.my-domain.tld: AH00947: connected //var/www/my-domain.tld/nextcloud/ocs/v2.php to httpd-UDS:0 Mar 13 14:47:50 server apache[742310]: [proxy:debug] cloud.my-domain.tld: AH02823: FCGI: connection established with Unix domain socket /run/php-fpm/www.sock (php:8000) Mar 13 14:47:50 server apache[742310]: [proxy:debug] cloud.my-domain.tld: AH00943: FCGI: has released connection for (php:8000) Mar 13 14:47:50 server apache[742310]: [proxy:debug] cloud.my-domain.tld: AH01143: Running scheme unix handler (attempt 0) Mar 13 14:47:50 server apache[742310]: [proxy_fcgi:debug] cloud.my-domain.tld: AH01076: url: fcgi://php//var/www/my-domain.tld/nextcloud/ocs/v2.php proxyname: (null) proxyport: 0 Mar 13 14:47:50 server apache[742310]: [proxy_fcgi:debug] cloud.my-domain.tld: AH01078: serving URL fcgi://php//var/www/my-domain.tld/nextcloud/ocs/v2.php Mar 13 14:47:50 server apache[742310]: [proxy:debug] cloud.my-domain.tld: AH00942: FCGI: has acquired connection for (php:8000) Mar 13 14:47:50 server apache[742310]: [proxy:debug] cloud.my-domain.tld: AH00944: connecting fcgi://php//var/www/my-domain.tld/nextcloud/ocs/v2.php to php:8000 Mar 13 14:47:50 server apache[742310]: [proxy:debug] cloud.my-domain.tld: AH02545: fcgi: has determined UDS as /run/php-fpm/www.sock Mar 13 14:47:50 server apache[742310]: [proxy:debug] cloud.my-domain.tld: AH00947: connected //var/www/my-domain.tld/nextcloud/ocs/v2.php to httpd-UDS:0 Mar 13 14:47:50 server apache[742310]: [proxy:debug] cloud.my-domain.tld: AH02823: FCGI: connection established with Unix domain socket /run/php-fpm/www.sock (php:8000) Mar 13 14:47:50 server apache[742310]: [proxy:debug] cloud.my-domain.tld: AH01143: Running scheme unix handler (attempt 0) Mar 13 14:47:50 server apache[742310]: [proxy_fcgi:debug] cloud.my-domain.tld: AH01076: url: fcgi://php//var/www/my-domain.tld/nextcloud/remote.php proxyname: (null) proxyport: 0 Mar 13 14:47:50 server apache[742310]: [proxy_fcgi:debug] cloud.my-domain.tld: AH01078: serving URL fcgi://php//var/www/my-domain.tld/nextcloud/remote.php Mar 13 14:47:50 server apache[742310]: [proxy:debug] cloud.my-domain.tld: AH00942: FCGI: has acquired connection for (php:8000) Mar 13 14:47:50 server apache[742310]: [proxy:debug] cloud.my-domain.tld: AH00944: connecting fcgi://php//var/www/my-domain.tld/nextcloud/remote.php to php:8000 Mar 13 14:47:50 server apache[742310]: [proxy:debug] cloud.my-domain.tld: AH02545: fcgi: has determined UDS as /run/php-fpm/www.sock Mar 13 14:47:50 server apache[742310]: [proxy:debug] cloud.my-domain.tld: AH00947: connected //var/www/my-domain.tld/nextcloud/remote.php to httpd-UDS:0 Mar 13 14:47:50 server apache[742310]: [proxy:debug] cloud.my-domain.tld: AH02823: FCGI: connection established with Unix domain socket /run/php-fpm/www.sock (php:8000) Mar 13 14:47:50 server apache[742310]: [proxy:debug] cloud.my-domain.tld: AH00943: FCGI: has released connection for (php:8000) Mar 13 14:47:50 server apache[742310]: [proxy:debug] cloud.my-domain.tld: AH00943: FCGI: has released connection for (php:8000) Mar 13 14:48:08 server apache[742310]: [proxy:debug] cloud.my-domain.tld: AH00943: FCGI: has released connection for (php:8000) Mar 13 14:48:09 server apache[742310]: [proxy:debug] cloud.my-domain.tld: AH01143: Running scheme unix handler (attempt 0) Mar 13 14:48:09 server apache[742310]: [proxy_fcgi:debug] cloud.my-domain.tld: AH01076: url: fcgi://php//var/www/my-domain.tld/nextcloud/remote.php proxyname: (null) proxyport: 0 Mar 13 14:48:09 server apache[742310]: [proxy_fcgi:debug] cloud.my-domain.tld: AH01078: serving URL fcgi://php//var/www/my-domain.tld/nextcloud/remote.php Mar 13 14:48:09 server apache[742310]: [proxy:debug] cloud.my-domain.tld: AH00942: FCGI: has acquired connection for (php:8000) Mar 13 14:48:09 server apache[742310]: [proxy:debug] cloud.my-domain.tld: AH00944: connecting fcgi://php//var/www/my-domain.tld/nextcloud/remote.php to php:8000 Mar 13 14:48:09 server apache[742310]: [proxy:debug] cloud.my-domain.tld: AH02545: fcgi: has determined UDS as /run/php-fpm/www.sock Mar 13 14:48:09 server apache[742310]: [proxy:debug] cloud.my-domain.tld: AH00947: connected //var/www/my-domain.tld/nextcloud/remote.php to httpd-UDS:0 Mar 13 14:48:09 server apache[742310]: [proxy:debug] cloud.my-domain.tld: AH02823: FCGI: connection established with Unix domain socket /run/php-fpm/www.sock (php:8000) Mar 13 14:51:53 server apache[742310]: [proxy_fcgi:error] cloud.my-domain.tld: (70008)Partial results are valid but processing is incomplete: AH01075: Error dispatching request to : (reading input brigade) Mar 13 14:51:53 server apache[742310]: [proxy:debug] cloud.my-domain.tld: AH00943: FCGI: has released connection for (php:8000)
apache2ctl -M
returns
server ~ # apache2ctl -M Loaded Modules: core_module (static) so_module (static) http_module (static) mpm_event_module (static) alias_module (shared) auth_basic_module (shared) authn_core_module (shared) authn_file_module (shared) authz_core_module (shared) authz_host_module (shared) authz_user_module (shared) autoindex_module (shared) deflate_module (shared) dir_module (shared) env_module (shared) filter_module (shared) headers_module (shared) http2_module (shared) include_module (shared) logio_module (shared) mime_module (shared) negotiation_module (shared) proxy_module (shared) proxy_fcgi_module (shared) proxy_http_module (shared) proxy_http2_module (shared) proxy_wstunnel_module (shared) rewrite_module (shared) setenvif_module (shared) socache_shmcb_module (shared) ssl_module (shared) unixd_module (shared)
Potentially relevant parts from the Apache config
LogLevel notice proxy:debug proxy_fcgi:debug # ... <IfModule mpm_event_module> StartServers 3 MinSpareThreads 15 MaxSpareThreads 80 ThreadsPerChild 25 MaxRequestWorkers 400 MaxConnectionsPerChild 0 </IfModule> # ... <IfModule !mod_php8.c> <IfModule proxy_fcgi_module> <IfModule setenvif_module> SetEnvIfNoCase ^Authorization$ "(.+)" HTTP_AUTHORIZATION=$1 </IfModule> <Proxy "fcgi://php/"> ProxySet flushpackets=auto flushwait=10 timeout=1200 </Proxy> <FilesMatch ".+\.ph(?:ar|p|tml)$"> <If "-f %{SCRIPT_FILENAME}"> SetHandler "proxy:unix:/run/php-fpm/www.sock|fcgi://php/" </If> </FilesMatch> <FilesMatch ".+\.phps$"> Require all denied </FilesMatch> <FilesMatch "^\.ph(?:ar|p|ps|tml)$"> Require all denied </FilesMatch> </IfModule> </IfModule>
Potentially relevant parts from the PHP FPM config
error_log = syslog log_level = notice ; This value must high enough to serve the maximum number of simultaneous ; Apache request plus some slack for CLI requests ; Apache spawns at most 16 processes (see ServerLimit) with 25 worker treads each ; (see ThreadsPerChild) and hence can serve at most 400 requests ; (see MaxRequestWorkers). ; Here we round up to 420. pm.max_children = 420 pm.start_servers = 20 pm.min_spare_servers = 15 pm.max_spare_servers = 25
Potentially relevant parts from the php.ini
for FPM:
max_execution_time = 1200 max_input_time = 1200 post_max_size = 1638M upload_max_filesize = 1228M max_file_uploads = 512