Hi, I'm running ISPConfig 2.2 on a Debian Sarge perfect setup. I'm trying to get CGI to work on a site but for now, after trying many things, I didn't manage. In addition to checking "Enable CGI" for that host, here are the relevant additional configurations I added (they should be redundant, but well) : Code: ScriptAlias /calendar/ /var/www/web3/web/calendar/ <Directory /var/www/web3/web/calendar> Options +ExecCGI +FollowSymLinks </Directory> For my tests I'm trying to run a simple perl cgi which sends the html doctype and prints a nice hello world - it works locally. The permissions are as follow : Code: -rwxr-xr-x 1 web3_xxx web3 78 Mar 23 10:45 test.cgi The error log shows the following when hitting the CGI : Code: [error] (13)Permission denied: exec of '/var/www/web3/web/calendar/test.cgi' failed [error] Premature end of script headers: test.cgi I then decided to enable suexec, and here are the errors I get : Code: [error] Premature end of script headers: test.cgi [error] failed to open log file [error] fopen: Permission denied The corresponding suexec log : Code: uid: (10008/web3_xxx) gid: (10003/10003) cmd: test.cgi I also tested with falko's hello_world.pl in case, in the cgi-bin directory and in my calendar directory -> no go ... Thanks in advance for any hint which could help
You must put all Perl scripts into the cgi-bin directory, and you must make them executable. If you edited the scripts on a Windows PC before, you must save them with Unix linebreaks, not Windows linebreaks.
Putting the script in cgi-bin gave me the same result - but the additional directive I added should make them fine in the calendar directory. Oh, and the script was executable : -rwxr-xr-x I used vi on the server to edit my test - and unzipped your tests file directly on the server.
Did another test to be sure, placed my cgi in the cgi-bin directory. suexec log tells me : Code: [2006-03-23 18:50:37]: uid: (10008/web3_claudem) gid: (10003/10003) cmd: test.cgi Error log tells me : Code: [Thu Mar 23 18:51:25 2006] [error] [client xxx] failed to open log file [Thu Mar 23 18:51:25 2006] [error] [client xxx] fopen: Permission denied [Thu Mar 23 18:51:25 2006] [error] [client xxx] Premature end of script headers: test.cgi Permissions are as follow : Code: web3_claudem@ns33446:/var/www/web3/cgi-bin$ ll total 12 drwxr-xr-x 2 web3_claudem web3 4096 Mar 23 11:12 . drwxr-xr-x 12 web3_claudem web3 4096 Mar 23 10:48 .. -r-------- 1 root root 0 Feb 11 13:10 .no_delete -rwxr-xr-x 1 web3_claudem web3 78 Mar 23 10:47 test.cgi And I didn't changed the config Test.cgi is as follow, written using vi in a term : Code: #!/usr/bin/perl # print "Content-type:text/html\n\n"; print "Hello World!!!";
Found my issue - the /var/www partition had the noexec option (I'm used to do that as I never used cgi before)