Website or Webmail is showing 500 internal server error: command cgi_wrapper not in docroot

Created:

2016-11-16 12:50:58 UTC

Modified:

2017-08-16 16:55:21 UTC

0

Was this article helpful?


Have more questions?

Submit a request

Website or Webmail is showing 500 internal server error: command cgi_wrapper not in docroot

Applicable to:

  • Plesk 12.5 for Linux
  • Plesk Onyx for Linux
  • Plesk 11.x for Linux
  • Plesk 12.0 for Linux

Symptoms

Webmail showing "500 internal server error".

In Apache logs, I can see:

tail -f /var/log/httpd/error_log

[Thu Dec 05 17:21:00 2013] [warn] [client 123.123.123.123] (104)Connection reset by peer: mod_fcgid: error reading data from FastCGI server
[Thu Dec 05 17:21:00 2013] [error] [client 123.123.123.123] Premature end of script headers: index.php

in the suexec log:

tail -f /var/log/httpd/suexec_log

[2013-12-05 15:36:35]: uid: (501/horde_sysuser) gid: (504/504) cmd: cgi_wrapper
[2013-12-05 15:36:35]: command cgi_wrapper not in docroot (501)

Cause

CGI wrapper that comes with CentOS' apache RPM is configured to allow only CGI scripts in /var/www . Suexec only executes programs within an apache <Document Root> . If the script is not in Document Root , suexec will trigger suexec's restrictions on executable file locations. Thus websites and webmail start showing internal server error if there are any symlinks for the document root.

Resolution

Ensure that the ' /var/www ' is not a symlink to any other directory

# ls -ld /var/www
lrwxrwxrwx 1 root root 14 Oct 24 11:14 www -> /mnt/data/www/

You need to remove the symlink and change the vhosts location by using the transvhosts.pl utility from the following article: 213367009

Have more questions? Submit a request
Please sign in to leave a comment.