On Jan 11, 2007, at 6:22 AM, Serge Dubrouski wrote:
DO NOT REMOVE that #!/usr/bin/perl line. Without it OS tries to run it as a binary (ELF or whatever is appropriate for your systen ) file and of course fails.
But with it, it can not find /usr/bin/perl (thanks to the chroot), and, of course, fails :-p bit of a catch 22-can't run with it, can't run without it. So after reading the various responses, as well as some additional web searching, I have gone ahead and copied /usr/bin/ perl to /var/www/usr/bin/perl so the script can see/access /usr/bin/ perl, even when chrooted. This, at least, gets rid of the cant find file/directory and invalid exec format errors. I'm still getting a "premature end of script headers" error when I try to run it though Apache, however. Running the test script as "chroot /var/www/ /cgi- bin/test.cgi" gives an "Abort trap" error. Running it normally (not chrooted) works. Obviously I do not have a proper install of perl in my chroot. Sigh. I'll keep trying. Thanks for the responses!
----------------------------------------------- Israel Brewster Computer Support Technician Frontier Flying Service INC. 5245 Airport Industrial Rd Fairbanks, AK 99709 -----------------------------------------------
On 1/10/07, Israel Brewster <israel@xxxxxxxxxxxxxxxxxx> wrote:yeah, perl is not available at all from within the Apache chroot jail, unless I am missing something. Making the change to the LoadModule line you suggested allowed the various perl directives in the config file to load without complaint. Attempting to execute the script, however, results in a [error] (8)Exec format error: exec of / cgi-bin/perl/routers2.cgi failed This error is the same if I try with either a .cgi extension on the file or a .pl extension ----------------------------------------------- Israel Brewster Computer Support Technician Frontier Flying Service INC. 5245 Airport Industrial Rd Fairbanks, AK 99709 ----------------------------------------------- On Jan 10, 2007, at 4:31 PM, Serge Dubrouski wrote: > So you don't have perl available at all? Then you definetely need> mod_perl. Have you tried to change your LoadModule line for mod_perl> like I suggested erlier? > > On 1/10/07, Israel Brewster <israel@xxxxxxxxxxxxxxxxxx> wrote: >> But with it I get a "file not found" error since it can't access / >> usr/ >> bin/perl from within the chroot (/var/www). If that line can't be>> removed, then apparently I can't run perl scripts under Apache with >> Apache chrooted, even with mod_perl running properly-is that correct?>> or do I just need to change that line to something else? On the >> brighter side, changing the LoadModule line as suggested did allow>> the config directives to load properly. Didn't help get the script to>> run though. >> ----------------------------------------------- >> Israel Brewster >> Computer Support Technician >> Frontier Flying Service INC. >> 5245 Airport Industrial Rd >> Fairbanks, AK 99709 >> ----------------------------------------------- >> >> >> On Jan 10, 2007, at 2:35 PM, Serge Dubrouski wrote: >> >> > Do not remove #!/usr/bin/perl line! Without it OS doesn't know >> how to >> > run that file. >> > >> > On 1/10/07, Israel Brewster <israel@xxxxxxxxxxxxxxxxxx> wrote: >> >> I installed mod_perl from the package that was distributed with >> >> OpenBSD 4.0. The install didn't give any errors, so I have to >> assume >> >> it installed properly. As far as I can tell, it didn't make any>> >> configuration changes. Just placing the script in my CGI directory>> >> (and removing the #!/usr/bin/perl line) gives "[error] (8)Exec >> format >> >> error: exec of /cgi-bin/perl/routers2.pl failed". >> >> ----------------------------------------------- >> >> Israel Brewster >> >> Computer Support Technician >> >> Frontier Flying Service INC. >> >> 5245 Airport Industrial Rd >> >> Fairbanks, AK 99709 >> >> ----------------------------------------------- >> >> >> >> >> >> On Jan 10, 2007, at 1:39 PM, Serge Dubrouski wrote: >> >> >> >> > For this configuration you need to have mod_perl installed on >> your>> >> > server. Why don't you simply put your script into your cgi- bin>> >> > directory? >> >> >>> >> > On 1/10/07, Israel Brewster <israel@xxxxxxxxxxxxxxxxxx> wrote:>> >> >> I don't know if what I am trying to do here is even possible >> >> (sane?)>> >> >> but I thought I'd ask. I am running Apache 1.3.29 on an OpenBSD>> >> 4.0 >> >> >> system, with Apache chrooted to /var/www. I have a perl >> script CGI >> >> >> (it has the .cgi extention, not .pl, but is actually a perl >> >> script) >> >> >> that I need to run. Currently, the script is written to run >> >> using the >> >> >> system perl interpreter, with the first line of the script >> >> being #!/>> >> >> usr/bin/perl This obviously doesn't work, since when it runs as>> >> a CGI >> >> >> it is chrooted to /var/www, and can not see /usr/bin. Now I >> would >> >> >> think that Apache should be able to run this script using >> the perl>> >> >> module, which I have installed, but I can't seem to get it to>> >> work. >> >> >> Could someone point me to something that tells me how to >> properly >> >> >> enable/run perl scripts in Apache? I looked at mod_perl >> >> website, but >> >> >> all it says is to add a code block like the following: >> >> >> >> >> >> Alias /perl/ /home/httpd/perl/ >> >> >> PerlModule Apache::Registry >> >> >> <Location /perl> >> >> >> SetHandler perl-script >> >> >> PerlHandler Apache::Registry >> >> >> Options ExecCGI >> >> >> allow from all >> >> >> PerlSendHeader On >> >> >> </Location> >> >> >>>> >> >> which just gives me an 'Invalid command 'PerlModule' This would>> >> imply >> >> >> to me that mod_perl isn't being loaded, in spite of being >> >> installed,>> >> >> but that leaves me needing to know how to load the perl module.>> >> >> Adding a line like LoadModule mod_perl /usr/local/lib/ >> mod_perl.so>> >> >> (which is the correct path to the mod_perl.so file) just gives>> >> me a >> >> >> "Can't locate API module structure `mod_perl' in file /usr/ >> >> local/lib/ >> >> >> mod_perl.so: Unable to resolve symbol" What am I missing >> here? How>> >> >> can I get Apache to run perl scripts? Thanks for any assistance>> >> that >> >> >> can be provided >> >> >> >> >> >> >> >> >> ----------------------------------------------- >> >> >> Israel Brewster >> >> >> Computer Support Technician >> >> >> Frontier Flying Service INC. >> >> >> 5245 Airport Industrial Rd >> >> >> Fairbanks, AK 99709 >> >> >> ----------------------------------------------- >> >> >> >> >> >> >> >> >> >> >> >> >> >>>> --------------------------------------------------------------------->> >> >> The official User-To-User support forum of the Apache HTTP >> Server >> >> >> Project.>> >> >> See <URL:http://httpd.apache.org/userslist.html> for more info.>> >> >> To unsubscribe, e-mail: users-unsubscribe@xxxxxxxxxxxxxxxx >> >> >> " from the digest: users-digest- >> unsubscribe@xxxxxxxxxxxxxxxx >> >> >> For additional commands, e-mail: users-help@xxxxxxxxxxxxxxxx >> >> >> >> >> >> >> >> > >> >> > >> >>>> --------------------------------------------------------------------->> >> > The official User-To-User support forum of the Apache HTTP >> Server >> >> > Project.>> >> > See <URL:http://httpd.apache.org/userslist.html> for more info.>> >> > To unsubscribe, e-mail: users-unsubscribe@xxxxxxxxxxxxxxxx>> >> > " from the digest: users-digest- unsubscribe@xxxxxxxxxxxxxxxx>> >> > For additional commands, e-mail: users-help@xxxxxxxxxxxxxxxx >> >> >> >> >> >>>> --------------------------------------------------------------------- >> >> The official User-To-User support forum of the Apache HTTP Server>> >> Project. >> >> See <URL:http://httpd.apache.org/userslist.html> for more info. >> >> To unsubscribe, e-mail: users-unsubscribe@xxxxxxxxxxxxxxxx>> >> " from the digest: users-digest- unsubscribe@xxxxxxxxxxxxxxxx>> >> For additional commands, e-mail: users-help@xxxxxxxxxxxxxxxx >> >> >> >> >> > >> >>> --------------------------------------------------------------------- >> > The official User-To-User support forum of the Apache HTTP Server>> > Project. >> > See <URL:http://httpd.apache.org/userslist.html> for more info. >> > To unsubscribe, e-mail: users-unsubscribe@xxxxxxxxxxxxxxxx >> > " from the digest: users-digest-unsubscribe@xxxxxxxxxxxxxxxx >> > For additional commands, e-mail: users-help@xxxxxxxxxxxxxxxx >> >>>> --------------------------------------------------------------------->> The official User-To-User support forum of the Apache HTTP Server >> Project. >> See <URL:http://httpd.apache.org/userslist.html> for more info. >> To unsubscribe, e-mail: users-unsubscribe@xxxxxxxxxxxxxxxx >> " from the digest: users-digest-unsubscribe@xxxxxxxxxxxxxxxx >> For additional commands, e-mail: users-help@xxxxxxxxxxxxxxxx >> >> >> ---------------------------------------------------------------------> The official User-To-User support forum of the Apache HTTP Server > Project. > See <URL:http://httpd.apache.org/userslist.html> for more info. > To unsubscribe, e-mail: users-unsubscribe@xxxxxxxxxxxxxxxx > " from the digest: users-digest-unsubscribe@xxxxxxxxxxxxxxxx > For additional commands, e-mail: users-help@xxxxxxxxxxxxxxxx ---------------------------------------------------------------------The official User-To-User support forum of the Apache HTTP Server Project.See <URL:http://httpd.apache.org/userslist.html> for more info. To unsubscribe, e-mail: users-unsubscribe@xxxxxxxxxxxxxxxx " from the digest: users-digest-unsubscribe@xxxxxxxxxxxxxxxx For additional commands, e-mail: users-help@xxxxxxxxxxxxxxxx---------------------------------------------------------------------The official User-To-User support forum of the Apache HTTP Server Project.See <URL:http://httpd.apache.org/userslist.html> for more info. To unsubscribe, e-mail: users-unsubscribe@xxxxxxxxxxxxxxxx " from the digest: users-digest-unsubscribe@xxxxxxxxxxxxxxxx For additional commands, e-mail: users-help@xxxxxxxxxxxxxxxx
--------------------------------------------------------------------- The official User-To-User support forum of the Apache HTTP Server Project. See <URL:http://httpd.apache.org/userslist.html> for more info. To unsubscribe, e-mail: users-unsubscribe@xxxxxxxxxxxxxxxx " from the digest: users-digest-unsubscribe@xxxxxxxxxxxxxxxx For additional commands, e-mail: users-help@xxxxxxxxxxxxxxxx