in reply to More Directory Permissions

Nothing to do with perl, but I'll bite.

I believe what you want to do is prevent someone from getting a list of the files in the directory, while still allowing the person to view files within the directory, if s/he knows the filenames.

You can do this by making the directory unreadable:

chmod go-r <dir>
while making files within readable. A 'ls' will then give a 'permission denied' for group and other.

But, like athomason, I get the impression that perhaps you are talking about httpd permissions, because of the use of the term forbidden. If what you want is to not give a directory listing (http://blah.com/ will give an error if the default filename isn't found) you can use the same solution.

Or, assuming you are using apache, you can modify srm.conf (or httpd.conf). You need to create an entry for the directory in question. It might look something like this:

<Directory "/home/foo/public_html"> AllowOverride All Order allow,deny Allow from all # Options Indexes </Directory>
It's the "Indexes" option which toggles the directory listing permissions. Include it and permission is granted, remove it and it is removed.