Internal Server Error - Jaguarpc
Sep 17, 2006

Internal Server Error

Share With

Just a quick note about “Internal Server Error” problems after upgrading Apache on these Plesk machines.

You may start getting the “500 Internal Server Error” errors after doing so, and that is because the upgraded Apache has overwritten the Plesk version of “suexec”, a handy little program that allows the webserver to run CGI-BIN programs.

However, you are in luck! Plesk keeps a copy of their modified version of “suexec” around on the box.

How-To restore suexec:
1. log in as the ‘root’ user on yer box.
2. cd /usr/sbin
3. mv suexec suexec.old (or whatever you want to call it)
4. cp psa-suexec suexec

Technical Jazz:
The problem is that Apache’s stock version of suexec doesn’t allow (for safety reasons) cgi-bin programs to be execute from any but underneath the MAIN Apache document root. Which, in the case of these Plesk servers is /var/www… since all the virtually hosted addresses live under /home/httpd/vhosts…, the stock Apache suexec doesn’t allow that. Modifying suexec is something of a hobby in the unix web administration world, so this isn’t entirely odd.

BTW, you can also check the /var/log/suexec.log to see what is being suexec’ed, and what errors are happening. The error you’ll see in this case is “command not in docroot”.

Enjoy 🙂

Alex

Share With

Leave a Reply