Fehlermeldung ist:Apache suexec "Befehl nicht in docroot"
command not in docroot (/home/site1/cgi-bin/test.pl).
Here ich dies gefunden:
suexec erfordert das CGI-Skript unter dem Server des DocumentRoot (nicht der Virtual DocumentRoot) zu sein . Es ist jedoch zulässig, dass das VirtualHost DocumentRoot ein Symlink zu einem Verzeichnis ist, das unter dem echten DocumentRoot erscheint.
ein Teil des virtuellen Host-config:
[...]
DirectoryIndex index.html index.html index.php
DocumentRoot /home/site1/htdocs
SuexecUserGroup site1 site1
ScriptAlias /cgi-bin/ /home/site1/cgi-bin/
<Location /home/site1/cgi-bin>
Options +ExecCGI
</Location>
<Directory /home/site1/>
Options -Includes -Indexes -FollowSymLinks +ExecCGI MultiViews
AddHandler cgi-script .cgi .pl
AllowOverride none
Order allow,deny
Allow from all
</Directory>
[...]
So ziehe ich Perl-Skripte innerhalb cgi-ist, aber wenn ich dieses Problem nicht lösen kann, kann ich alle Skripte zu htdocs bewegen.
Das Paket 'apache2-suexec-custom' ermöglicht mehr Flexibilität. –
Ausgezeichnet. Genau das, was ich gesucht habe. –
Der Befehl ist wahrscheinlicher 'suexec -V', beachten Sie die Großbuchstaben. – insaner