Nginx

Материал из wiki.nntc.nnov.ru
Перейти к навигации Перейти к поиску

Все познается в примерах...

Задача

Выпустить в интернет веб-сервисы с различных ip хостов одной подсети через сервер, имеющий выход в интернет через pppoe соединение.

При этом хосты, на которых крутятся web-сервисы должны видеть только сервер, смотрящий в интернет, сами в интернет смотреть не должны.

Работающие apache на каждой из ip хостов должны в свои логи получать реальные ip адреса клиентов из интернета.

Решение

                       Решение делается на Ubuntu Server 8.04.3 LTS. Ориентируемся по картинке ниже...
                       Некоторые ссылки:
                       http://debianworld.ru/articles/ustanovka-nginx-kak-front-end-k-apache-v-debian-ubuntu/
                       http://www.opennet.ru:8101/base/net/nginx_frontend_apache.txt.html
  • На Интернет сервере устанавливаем nginx
aptitude install nginx
  • Редактируем конфиг nginx
sudo nano /etc/nginx/nginx.conf

приблизительно так:

# пользователь, от которого запускается процесс
user www-data;
# кол-во рабочих процессов. Обычно равно кол-ву ядер на машине
worker_processes  2;
error_log  /var/log/nginx/error.log;
pid        /var/run/nginx.pid;
events {
    worker_connections  1024;
}
http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream; 
    access_log  /var/log/nginx/access.log;
    sendfile        on;
    tcp_nopush     on;
    keepalive_timeout  2;
    tcp_nodelay        on;
    gzip  on;
    gzip_comp_level 3;
    gzip_proxied any;
    gzip_types text/plain text/html text/css application/x-javascript text/xml application/xml application/xml+rss text/javascript;
    include /etc/nginx/conf.d/*.conf;
    include /etc/nginx/sites-enabled/*;
} 




Nginx11.png