in reply to $ENV{REMOTE_HOST} not set on new server?

This is unlikely to be a Perl problem.
edit Which is probably why the question has a low reputation - don't be discouraged! /edit

REMOTE_HOST is usually set by the Web Server
For example, from Apache HostName LookUps

So you will need to be aware of the change in web server configuration.
There is an outside chance that if you have moved machines that the DNS is different and the lookup is failing. But that is not so likely.

As busunsl stated, more details are required.

<a href="http://www.graq.co.uk">Graq</a>