nginx reverse-proxy

Недавно возникла задача такого плана, надо было все обращения на 80 порт на роутере пробросить на определенный сайт, не долго чесал репу и установил из портов nginx:

# cd /usr/ports/www/nginx-devel && make install clean

Установил, теперь займемся настройкой проксирования всех запросов:

# ee /usr/local/etc/nginx/nginx.conf

Мне кроме как проксирование ничего не надо больше от сервера, поэтому я вытер весь конфиг и добавил в него следующий:

user www;
worker_processes 1;
error_log /var/log/nginx.error_log info;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
use kqueue;
}
http {
include mime.types;
default_type application/octet-stream;
keepalive_timeout 65;
server {
    listen IP-ROUTERA:80;
    location / {
        proxy_pass http://IP-SITE:80/;
        proxy_set_header   X-Real-IP $remote_addr;
        proxy_set_header   Host $http_host;
        proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}
}

где,
IP-ROUTERA — айпи на котором слушает вебсервер
IP-SITE — айпи сайта или днс имя.
Собственно все.

# /usr/local/etc/rc.d/nginx start

P.S. чем больше работаю с nginx, тем больше он мне нравится!

Поделись с друзьями:

Опубликовано 22.02.2011 в 12:33 · Автор komivlad · Ссылка
Рубрики: FreeBSD, WebServer · Теги: , , ,

Написать комментарий