I had the same issue when I installd modperl. My solution was to put everything Perlish in the "root", with plain HTML stylesheets and images under it. So it looked like this:
/htdocs/myapp <-- executable Perl /htdocs/myapp/img <-- not executable /htdocs/myapp/css <-- not executable htdocs/myapp/html <-- not executable Then I used directory to tell Apache that the myapp was executable for perl but everything below it was not, like this: # Serves d:\htdocs\smurfbuster\index.html as http://localhost/smurfbuster/index.html Alias /myapp/ "d:/htdocs/myapp/" <Directory d:/htdocs/myapp> Order allow,deny Allow from all SetHandler perl-script PerlResponseHandler ModPerl::Registry PerlOptions +ParseHeaders Options +ExecCGI </Directory> # keep from trying to interpret as Perl for everything under myapp # note the /* on end of specified directory ... it's everything in directories BELOW myapp <Directory "d:/htdocs/myapp/*"> SetHandler default-handler </Directory> THe above code is not necessarily complete; it's copied and pasted from different part of my httpd.conf because I now use HTML::Mason and my setup has changed, but it demonstrates the basic idea. When I was new to Apache and mod_perl, the Apache doc page that described how to combined multiple directives really turned the lightbulb on, and it's probably worth reviewing: http://httpd.apache.org/docs-2.0/sections.html#mergin And I highly recommend HTML::Mason if you are going to write more than just a few web pages. http://www/masonhq.com At 09:05 AM 2/4/04 -0500, Hemond, Steve wrote: >Hi ppl, > >I have setup Apache2/mod_perl and started writing perl scripts to >generate html code. > >I have a /wood/ directory with two subdirs : /perl/ and /images/ > >Actually I have setup httpd.conf this way : > ><Directory /prog/www/wood/perl> > SetHandler perl-script > PerlResponseHandler ModPerl::Registry > PerlOptions +ParseHeaders > Options +ExecCGI ></Directory> > >In my perl file I have this line : ><link type="text/css" rel="stylesheet" href="../menu.css"></link> > >And this line: ><img src="../images/banner.jpg"></img> > >The problem is it don't go at the right place to find my image and >stylesheet. [Tue Feb 03 15:08:58 2004] [error] 51806: ModPerl::Registry: >/prog/www/wood/perl/menu.css not found or unable to stat [Tue Feb 03 >15:08:58 2004] [error] 41882: ModPerl::Registry: >/prog/www/wood/perl/images not found or unable to stat > >If I put the perl files in the root directory (/wood/) and setup httpd >conf this way : <Directory /prog/www/wood/> > SetHandler perl-script > PerlResponseHandler ModPerl::Registry > PerlOptions +ParseHeaders > Options +ExecCGI ></Directory> > >I make it look under /images/ but it tries to read the .jpg byte per >byte like if it would be a perl file! > >The best solution for me is to have all perl and html files in the root >directory, and have the images under the /images/ subdirectory, and >maybe the stylesheets in the /style/ subdirectory. > >What would be the best httpd.conf configuration to do that? > >Thanks a lot for your help > >Best regards, > >Steve Hemond >Programmeur Analyste / Analyst Programmer >Smurfit-Stone, Ressources Forestieres >La Tuque, P.Q. >Tel.: (819) 676-8100 X2833 >[EMAIL PROTECTED] > > >-- >Reporting bugs: http://perl.apache.org/bugs/ >Mail list info: http://perl.apache.org/maillist/modperl.html >List etiquette: http://perl.apache.org/maillist/email-etiquette.html > > > -- Reporting bugs: http://perl.apache.org/bugs/ Mail list info: http://perl.apache.org/maillist/modperl.html List etiquette: http://perl.apache.org/maillist/email-etiquette.html