Anonymous Monk has asked for the wisdom of the Perl Monks concerning the following question:

created some simple image gallery / image view cgi scripts for my site that generate a gallery page / image page automatically (as can bee seen here), ideally, I'd like to set it up so that anyone on my site can just drop a link to the cgi from the directory of where the images are, without having to pass any directory/url information to the cgi, but I have so far found no way to do this effectively. I *think* that I could get the url side of it by parsing the HTTP_REFER variable, but I do not see a way of getting the local directory. Any ideas?

Replies are listed 'Best First'.
Re: Pull referencing directory/URL?
by plaid (Chaplain) on Mar 04, 2000 at 02:47 UTC
    I'm not sure I quite understand exactly what you're looking for, so correct me if I'm wrong... What I think you want is the Cwd module that comes included with the standard distribution. If you have /dir1/cgi which calls cwd(), and a symlink to it in /dir2/cgi, executing /dir2/cgi will have cwd() return /dir2, so if you use that in the main cgi, you can always determine the directory that it is linked from. For the url part of the question, I don't think you can get what you want through HTTP_REFERER, as that will contain the url that the person came from, not the url of the cgi that is linked to. The best way to go about it would probably be to have some sort of base url inside the perl script, to which part of the directory can be appended. This also prevents any potential security problems of trusting that the user isn't messing with their Referer header.