This morning I came across a problem when trying to upload an image to my WordPress blog. This error just said “HTTP error”. I noticed that if I tried to upload a very small image (< = 100 kb), everything was fine. After some Google queries (and a lot of things that said you should put this in
.htaccess), I fixed this issue.
Origin of the problem
The problem was caused by FastCGI. When using PHP as FastCGI, if you try to upload a file larger than 128 kb, an error “mod_fcgid: HTTP request length XXXX (so far) exceeds MaxRequestLen (131072)” occurs and causes a 500 internal server error. This happens because the value of MaxRequestLen directive is set to 131072 bytes (128 kb) by default.
Correction of the problem
To fix this, you should change the
MaxRequestLen directive from the file
fcgid.conf. Locate this file:
$ locate fcgid.conf
It’s usually located at edit
/etc/apache2/mods-available/fcgid.conf and add (or replace this line):
With this, the
MaxRequestLen will be 15 MB. Restart your web server and you should be fine!
$ sudo service apache2 restart