[vox-tech] Perl question: determining the computer's IP address

Micah J. Cowan vox-tech@lists.lugod.org
Thu, 26 Jun 2003 13:38:21 -0700


On Thu, Jun 26, 2003 at 10:57:27AM -0700, Richard Crawford wrote:
> I have a Perl script that I've written and which runs on a couple of
> different web servers.  Because the script rewrites some .html files that
> call on cgi-scripts, the script needs to know the IP address of the
> computer that it's running on.  Is there an environmental variable or
> something that I can call within Perl to find out the IP address so that I
> don't have to manually recode it on each server?

If you are running in a CGI environment, then there are several
env. vars you should be able to make use of:

  http://hoohoo.ncsa.uiuc.edu/cgi/env.html

In particular, there are variables for discovering not only your
server's IP address, but also its hostname, and the absolute URL path by
which your script was accessed.

> On a side note, the script I've written works, but it's clumsy and
> inelegant.  Is there anyone who'd be willing to look at my code and make
> suggestions for cleaning it up?

I'd be happy to.

-Micah