"Wong, Connie" wrote: > > Hello Geoffrey, hi...
these types of questions are probably more suited to the general mod_perl list, so I've cc'd them. > > My host is running an Apache server with mod-perl, and I have all the html > files resided in the "/usr/local/apache/htdocs" directory and all my perl > script is resided in the directory that I created for perl > "/usr/local/apache/Scripts". > > This works fine with the following config in the apache httpsd.conf file. > > PerlRequire conf/startup.pl > PerlFreshRestart On > > Alias /Scripts/ /usr/local/apache/Scripts/ > > <Location /Scripts> > SetHandler perl-script > PerlHandler Apache::Registry > Options +ExecCGI > PerlSendHeader On > PerlSetupEnv On > </Location> > > I have 2 questions: > > Question #1: running mod-perl > If I want to create a home for my application, say > "/home/server_name/proj_A/www", under the www directory, > I have docs and Scripts subdirectories. The docs subdirectory contains all > html files and the Scripts directory contains all the perl (mod-perl) files. > How do I configure this in the apache configuration file in order to make it > run correctly? it really depends on what you want to do. the easiest way would be to set the DocumentRoot to /home/server_name/proj_A/www for the partucular vhost, assuming that your entire application is the only thing on the vhost. another option is the <Location> directive, couple with an Alias directive. for help with generic apache directives, see the documentation at http://httpd.apache.org/docs > > Question #2: running cgi - how to configure this in apache conf file? > Someone else running a CGI program on the same apache server, his > application is resided in "home/server_name/porj_B/www". > > I configured the following directives in the apache configuration file, it > launches the html page is ok, but it try to invoke the perl (cgi-bin) then I > got the "Internal Server Error" message. It does not know where to find the > perl script. > > Alias /docs/ "/home/server_name/proj_B/docs/" > <Directory "/home/server_name/proj_B/docs"> > Options Indexes FollowSymlinks MultiViews > AllowOverride None > Order allow,deny > Allow from all > </Directory> > > ScriptAlias /cgi-bin/ "/home/server_name/proj_B/cgi-bin/" > <Directory "/home/server_name/proj_B/cgi-bin"> > AllowOverride None > Options None > Order allow,deny > Allow from all > </Directory> ScriptAlias is generally used with the <Location> directive. I'm not sure if it will work with <Directory> at all, but it may - I've never tried. a better approach for <Directory> containers is probably want to use just the Alias directive and place a SetHandler cgi-script directive within the <Directory>. that's about the only thing I can see that may be wrong off the top of my head. again, since this is just regular mod_cgi stuff, the Apache documentation site would be a good place to start for general apache setup tips. HTH --Geoff