Suexec and docroot problem

apache-2.2mod-fastcgisuexec

I've got a problem with running a FastCgiServer under apache2. When I define a virtual host with a static fcgi server configured, I get an error from suexec:

command not in docroot (/var/www-blah/dispatcher.fcgi)

Which is correct, because docroot is /var/www. But when I use a dynamic fastcgi generated by AddHandler magic, I'm also using suexec and the same problem doesn't occur – even though the script lives in /home/.../public_html/dispatcher.fcgi.

What causes suexec to run correctly there? And how can I replicate that behaviour on the virtual host?

Update: Actually, I moved my stuff from /var/www-blah to /var/www/blah, so it's under docroot and it works. I guess suexec has some public_html detection.

What still doesn't work though is dynamic fastcgi with suexec under /var/www/.... Even though the script is owned by the correct user, suexec doesn't show any errors and doesn't seem to run (script works as www-data)

Best Answer

suexec only executes programs within an apache document root. See the suexec security model, particularly point 13.