Thanks Keith for your suggestions. In the end, I settled upon a variation of what you suggested.
My goal: to allow my users to create static and dynamic HTML pages in their own home directories using both CGI and PERL as they liked. Basically, I wanted to be able to serve CGI and PERL-CGI out of the same directory. The Problem: mod_cgi and mod_perl both provide CGI services. If you attempt to set them up under the same directory, only one of them will work. The Solution: NOTE: I use only one config file: httpd.conf in accordance with current Apache configuration practices. 1. I enabled mod_userdir during installation of my Apache 1.3.17 server and set the UserDir to "public_html". This means that anywhere under the user's home directory, they can create a "public_html" directory from which to serve web pages: <IfModule mod_userdir.c> UserDir public_html </IfModule> 2. I disabled the UserDir for Root, per suggestion from Apache's website: UserDir disabled root 3. I set the controls on the public_html directory as follows: <Directory "/home/*/public_html"> Options +ExecCGI +Includes +Indexes AllowOverride None Order Allow,Deny Allow from All </Directory> 4. CGIs are enabled in the public_html directory (+ExecCGI) and can be served from outside /usr/local/apache/cgi-bin because the following lines were enabled in the mod_mime section of the configuration file: AddHandler cgi-script .cgi Now, any file ending in ".cgi" will be handled by the "cgi-script" handler 5. I wanted something equivalent to step four for handling perl-script files. The solution was to create a LocationMatch so that any URL ending in a predefined regular expression would be handed off to the PerlHandler. The form of the expression to be matched was "/somefile.pl" <LocationMatch "\/*\.pl$"> SetHandler perl-script PerlHandler Apache::Registry PerlSendHeader On </LocationMatch> Caveats: This is not the most secure solution in the world. If you do not personally know your users, as I do, and/or you do not trust them, I suggest you stick with the Apache recommended approach of creating a cgi-bin and/or perl-bin directories and only allow cgi's served out of those directories. Since my webserver is for development purposes, I wanted greater flexibility. Now both .cgi and .pl files can reside in the same directory and each is handled by the appropriate Handler. robert a. jacobs