Apache2 with mod_perl, it doesn't follow symlinks; How can I fix this?
Question
mod_perl/apache
doesn't seem able to follow symlinks.
In httpd.conf
I have:
Options FollowSymLinks
<VirtualHost *>
ServerName cas.devserver.com
ServerAlias cas.devserver.com
ServerAdmin webmaster@devserver.com
DocumentRoot /var/www/htdocs/abc/def
PerlSwitches -I/var/www/cgi-bin
PerlSendHeader On
<Location />
Options FollowSymLinks
PerlSendHeader On
PerlHandler Test1::Test
SetHandler perl-script
Order deny,allow
Allow from all
</Location>
</VirtualHost>
If /var/www/cgi-bin/Test1
is a directory containing Test.pm
, then it works. If it is a symlink to the directory that contains Test.pm
(/var/www/cgi-bin/test1/
) then it fails:
[error] [client xxx.xxx.xxx.xxx] failed to resolve handler `Test1::Test':
Can't locate Test1/Test.pm in @INC
(@INC contains: /var/www/cgi-bin/ <snip> /usr/lib/perl5/5.8.8 . /etc/httpd)
at (eval 9) line 3.\n
I've checked permissions and they seem OK.
Thanks for any help.
Solution
Simple obvious question,
Have you tried running your cgi script from the command line with the symlink in place?
Shouldn't you also add to the container?
Options +ExecCGI
HTH
cheers,
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow