in reply to User rights and Perl

I'm assuming you're on a unix system.

Here's one way you can let a group of people "share" a single, common web directory:

Have each user create a "public_html" directory (chmod 755) inside their home directory for their personal web files. The files should be world readable (chmod 644).

Then inside the real webpage root directory, create a symbolic link to each of the user's public_html directories.
For example:

ln -s /home/john_doe/public_html /var/www/public_html/john_doe

Your perl script can now crawl the /var/www/public_html directory and build its index - just make sure that it knows how to follow symbolic links. If your using Apache, there's a special directive needed for symbolic links as well:

<Directory "/var/www/public_html"> Options FollowSymLinks </Directory>

(note that you may have more directives inside the "Directory" block, and the path to your web root may be different - but you get the idea).

Another alternative is to switch to a full Content Management System (CMS) - google for it, you'll find lots of choices.