Эта статья описывает установку nginx как обычный прозрачный прокси для устранения проблемы медленных коннектов и сборку модуля mod_rpaf для апача (для подмены IP)
Здесь всё просто.
Убедитесь, что каждой директиве <VirtualHost 127.0.0.1:8080>
указан IP 127.0.0.1 и определенный порт (можно оставить 80, а можно заменить, например, на 8080)
Аналогично проверьте диррективы NameVirtualHost 127.0.0.1:8080 Listen 127.0.0.1:8080
(файл /etc/apache2/ports.conf)
Апач можно перезапустить /etc/init.d/apache2 restart
Убедится, что всё висит там, где надо, можно командой netstat -a | grep 80
Скачиваем модуль и извлекаем из архива
mkdir ~/rpaf; cd $_; wget http://stderr.net/apache/rpaf/download/mod_rpaf-0.6.tar.gz tar -xvf mod_rp* cd mod_rpaf-0.6 ;если команды apxs2 у вас нет, ставим покет с этим тулом apt-get install apache2-prefork-dev ; собираем модуль apxs2 -i -c -n mod_rpaf-2.0.so mod_rpaf-2.0.c ; создаём конфиг cd /etc/apache2/mods-available/ echo "LoadModule rpaf_module /usr/lib/apache2/modules/mod_rpaf-2.0.so RPAFenable On RPAFsethostname On RPAFproxy_ips 127.0.0.1">rpaf-2.0.load ; включаем модуль a2enmod rpaf-2.0 ; рестаруем апач /etc/init.d/apache2 restart
nginx можно собрать вручную, а можно установить из репозитариев(но там обычно старая версия): apt-get install nginx
Процесс сборки подробно описан здесь: Сборка nginx из исходников.
Здесь нам понадобится один http-сервер Если /etc/nginx/sites-enabled/ есть ссылки на конфиги, трём эти ссылки. Переходим в /etc/nginx/sites-avialable и создаём файл proxy с нашим конфигом
server { listen 80; # или listen <внешний IP>:80; location / { proxy_pass http://127.0.0.1:8080/; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }
Создаём симлинк ln -s ../sites-available/proxy proxy
Перезапускаем nginx /etc/init.d/nginx restart