Мы сталкиваемся с проблемой сбоя при загрузке файлов размером более ГБ, из-за чего во время загрузки продолжают печатать файлы apache error.logs, как:
[Tue May 07 04:16:35.109777 2024] [cgi:error] [pid 30766] (-102)Unknown error -102: [client 10.140.204.23:64774] AH01225: Error reading request entity data, referer: https://10.105.105.84/cgi-bin/pages.cgi?title=cm_net
[Tue May 07 04:17:05.919928 2024] [cgi:error] [pid 30768] (-102)Unknown error -102: [client 10.140.204.23:64802] AH01225: Error reading request entity data, referer: https://10.105.105.84/cgi-bin/pages.cgi?title=cm_net
[Tue May 07 04:17:36.592258 2024] [cgi:error] [pid 30767] (-102)Unknown error -102: [client 10.140.204.23:64849] AH01225: Error reading request entity data, referer: https://10.105.105.84/cgi-bin/pages.cgi?title=cm_net
[Tue May 07 04:18:07.223293 2024] [cgi:error] [pid 30766] (-102)Unknown error -102: [client 10.140.204.23:64884] AH01225: Error reading request entity data, referer: https://10.105.105.84/cgi-bin/pages.cgi?title=cm_net
[Tue May 07 04:18:37.928108 2024] [cgi:error] [pid 30767] (-102)Unknown error -102: [client 10.140.204.23:64916] AH01225: Error reading request entity data, referer: https://10.105.105.84/cgi-bin/pages.cgi?title=cm_net
[Tue May 07 04:19:08.700924 2024] [cgi:error] [pid 30768] (-102)Unknown error -102: [client 10.140.204.23:64950] AH01225: Error reading request entity data, referer: https://10.105.105.84/cgi-bin/pages.cgi?title=cm_net
[Tue May 07 04:19:39.443934 2024] [cgi:error] [pid 30767] (-102)Unknown error -102: [client 10.140.204.23:64980] AH01225: Error reading request entity data, referer: https://10.105.105.84/cgi-bin/pages.cgi?title=cm_net
[Tue May 07 04:20:10.530056 2024] [cgi:error] [pid 30766] (-102)Unknown error -102: [client 10.140.204.23:65029] AH01225: Error reading request entity data, referer: https://10.105.105.84/cgi-bin/pages.cgi?title=cm_net
Это наблюдалось после обновления httpd-2.4.41 до httpd-2.4.58. Пробовал с файлами меньшего размера, которые загружаются без проблем.
Увеличено время ожидания до 600 в httpd.conf и apache2.conf, но все равно безуспешно. Какие-либо предложения?
Редактировать1:
htaccess выглядит следующим образом:
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^$ webroot/ [L]
RewriteRule (.*) webroot/$1 [L]
</IfModule>
<IfModule mod_security.c>
SecRuleEngine On
SecRequestBodyAccess On
SecRequestBodyLimit 2147483648
SecRequestBodyNoFilesLimit 524288
SecRequestBodyInMemoryLimit 524288
</IfModule>
<IfModule mod_php7.c>
php_value upload_max_filesize 15000M
php_value post_max_size 15001M
php_value memory_limit 15000M
</IfModule>
и httpd.conf добавлен ниже строки:
LimitRequestBody 3000000000

Кажется, это проблема, с которой я столкнулся некоторое время назад. Попробуйте увеличить LimitRequestBody в основной конфигурации Apache или файле конфигурации виртуального хоста:
LimitRequestBody 3000000000
Адаптируйтесь к вашим конкретным потребностям, это за ~3 ГБ
См. CVE-2022-29404
я обновил htaccess с помощью приведенного ниже кода: <IfModule mod_rewrite.c> RewriteEngine on RewriteRule ^$ webroot/ [L] RewriteRule (.*) webroot/$1 [L] </IfModule> <IfModule mod_security.c> SecRuleEngine On SecRequestBodyAccess On SecRequestBodyLimit 2147483648 SecRequestBodyNoFilesLimit 524288 SecRequestBodyInMemoryLimit 524288 </IfModule> <IfModule mod_php7.c> php_value upload_max_filesize 15000M php_value post_max_size 15001M php_value Memory_limit 15000M </If Модуль> но не повезло
Также обновил httpd.conf с помощью LimitRequestBody 3000000000 и перезапустил Apache.
Что касается обновления, оно работало как часы после добавления LimitRequestBody 3000000000 и Timeout 600 в /etc/apache2/apache.conf и перезапуска Apache. Примечание. Местоположение файла может измениться в зависимости от вашей операционной системы. Спасибо @pierpy за предложение.
Этот вопрос, похоже, не связан с программированием (но связан с конфигурацией сервера). Дополнительную информацию см. в справочном центре и apache . Также проверьте stackoverflow.com/questions/3836417/1gb-file-upload-using-php