[ERROR] [Apache] mod_fcgid: HTTP request length exceeds MaxRequestLen
Jeżeli podczas wysyłania na serwer pliku przy pomocy Apache2 / PHP / mod_fcgid przegladarka zwraca bład:
Error 500, Internal server error
Natomiast w logach błędów Apache2 dotyczacych danej witryny internetowej znajdujesz następujacy wpis:
[Wed May 28 15:26:18 2014] [warn] [client IP.xxx.xxx.xxx] mod_fcgid: HTTP request length 131484 (so far) exceeds MaxRequestLen (131072), referer: ...
To ten artykuł jest właśnie dla Ciebie.
W pierwszej kolejności musimy zajrzeć do pliku php.ini w którym odszukujemy pozycję upload_max_filesize. Domyślnie konfiguracja dopuszcza pliki o wielkości do 2MB
upload_max_filesize = 2M
Wielkość ta często bywa niewystarczajaca, dlatego też proponuję zwiększyć ja do ok. ~50MB
upload_max_filesize = 50M
W następnej kolejności odszukujemy plik konfiguracyjny modułu Apache'a fcgid.conf który znajduje się w katalogu:
/etc/apache2/mods-available
Do powyższego pliku dodajemy linijkę z parametrem FcgidMaxRequestLen zawierajacym wartość wielkości pliku wyrażona w bajtach.
FcgidMaxRequestLen 51200000
Powyższa wartość odpowiada po mocnym naciagnięciu naszym 50M ;)
Domyślnie wielkość pliku to jakieś 128kB
FcgidMaxRequestLen 131072
W całokształcie plik fcgid.conf powinien wygladać mniej więcej tak:
<IfModule mod_fcgid.c>
AddHandler fcgid-script .fcgi
FcgidConnectTimeout 20
FcgidMaxRequestLen 51200000
</IfModule>
Na koniec pamiętamy o restarcie Apache'a
/etc/init.d/apache2 restart
Dodaj komentarz