I don't know if the previous replies actually gave you satisfaction, but just for my own edification, I tried a little script like this:
#!/usr/bin/perl use strict; use CGI; use Data::Dumper 'Dumper'; my $c = new CGI; print $c->header, $c->start_html, "<p> The script name is $0 </p>", '<pre>', Dumper( \%ENV ), '</pre>',$c->end_html;

When I put that in the cgi-bin directory for the apache server on my macosx laptop, I found that the value of $0 was the absolute physical path of the script; this happens to match the value of $ENV{SCRIPT_FILENAME}.

I think what you want is $ENV{SCRIPT_NAME} (note the difference), which (in my case at least) was the path as given in the url requested by the browser. So try that on your various server urls, and see if that %ENV element behaves as hoped for (i.e. gives a different name depending on which url you use).

If it does, then all you need is to add site-specific config files (or site-specific directories of config data) in your common (symlinked) path, and make sure the common cgi script checks the SCRIPT_NAME environment variable first, so it knows which config data to use for the given server.

UPDATE -- Ah, I just noticed the reply above that mentions $ENV{SCRIPT_NAME} -- so my post is redundant (except that it shows an easy way to confirm what you already found out).


In reply to Re: Resolving correct directory path in a symlinked directory by graff
in thread Resolving correct directory path in a symlinked directory by beermad

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.