Используя mod_proxy:
Перекидываем www.domain1.ru с машины, торчащей наружу (ее IP 1.2.3.4),
на машину внутри локалки (ее имя intra.mydomain.ru).
На 1.2.3.4
=============================================================
LoadModule proxy_module libexec/apache2/mod_proxy.so
LoadModule proxy_http_module libexec/apache2/mod_proxy_http.so
ProxyRequests Off
<VirtualHost *>
DocumentRoot /var/empty # любой пустой существующий каталог
ServerName www.domain1.ru
ProxyPass / http://intra.mydomain.ru/
ProxyPassReverse / http://intra.mydomain.ru/
</VirtualHost>
=============================================================
На intra.mydomain.ru
=============================================================
LoadModule rpaf_module libexec/apache2/mod_rpaf.so
RPAFenable On
RPAFsethostname On
RPAFproxy_ips 1.2.3.4
(конфигурация виртуальных хостов точно такая же, как если бы
внутреняя машина сама смотрела в Инет, т.е. даже имена
серверов не меняем)
=============================================================
И еще пример:
<VirtualHost *>
ServerAdmin webmaster@mysite.ru
DocumentRoot /www/mysite.ru/www
ServerName www.mysite.ru
# все что просят c http://www.mysite.ru/shilded/ тянем с http://192.168.1.21/
ProxyPass /shilded/ http://192.168.1.21/
</VirtualHost>
Взято отсюда: http://www.opennet.dev/openforum/vsluhforumID8/2894.html