Установка и настройка Nginx. Nginx frontend + Apache backend. Установка mod_rpaf

Рубрика: Nginx

8 Дек 2009

Легкие веб-сервера набирают обороты. По статистике Google Online Security Blog в Интернете стоит около 4% веб серверов на Nginx. Всем известный rambler.ru крутится на nginx. Nginx действительно отличный веб-сервер который достоин внимания.

Перед нами стоит задача, поставить Nginx как frontend что бы он обрабатывал только некоторые типы файлов, как мы знаем типы файлов – css, js, jpg, gif, exe, tar, pdf и другие подобные – это статика, обрабатывая такие типы файлов легким веб-сервером nginx мы снизим нагрузку на веб-сервер Apache и получим хороший прирост к производительности.

Шаг 1. Установка Nginx
Установка Nginx занимает несколько секунд.
Debian:

apt-get install nginx

FreeBSD:

cd /usr/ports/www/nginx
make install clean

Конфигурационный файл nginx вы найдете у себя в

Debian – /etc/nginx/nginx.conf
FreeBSD – /usr/local/etc/nginx/nginx.conf

Шаг 2. Подготовка Apache.
Настроим Apache, открываем конфигурационный файл, имя файла зависит от версии Apache и платформы. У меня вторая ветка Apache (2.2.x) на Debian и FreeBSD платформах.

Debian – /etc/apache2/ports.conf
FreeBSD – /usr/local/etc/apache2/httpd.conf

Находим строку вида Listen 80.100.100.10:80 где “80.100.100.10? IP вашего сервера и устанавливаем порт 81

Listen 80.100.100.10:81

Больше ничего не меняйте в конфиге Apache.

Шаг 3. Настройка Nginx

server {
listen 80.100.100.10:80; # ip вашего сервера и порт
server_name myexample.com www.myexample.com; # Имя вашего домена с www и без
location / {
proxy_pass http://80.100.100.10:81/;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarder_for;
}
location ~* \.(jpeg|jpg|gif|png|css|js|pdf|txt|tar)$ { # Обрабатываемые типы файлов
root /home/www/myexample.com/httpdocs; # Путь к коренвевому каталогу вашего сайта
}
}

Строки заголовка запроса X-Real-IP и X-Forwarded-For нужны будут вам если вы в своих скриптах используете информацию об IP-адресе посетителя или хотите скрыть от скриптов разделение на фрондэнд/бэкэнд и видеть нормальные IP пользователей, вместо IP фронтэнда, в таком случае вам необходимо будет дополнительно установить и настроить модуль mod_rpaf.

Шаг 4. Установка mod_rpaf
FreeBSD

cd /usr/ports/www/mod_rpaf
make install clean

После установки откройте конфигурационный файл Apache и проверьте наличие следующей строки :

LoadModule rpaf_module libexec/apache22/mod_rpaf.so

если такой строки нет, добавьте, но указывайте свой путь к файлу mod_rpaf.so
И немного ниже добавьте следующие строки предварительно заменив “80.100.100.10? на свой IP

RPAFenable On
RPAFsethostname On
RPAFproxy_ips 80.100.100.10
RPAFheader X-Forwarded-For

Оставить комментарий или два

О сайте

Поместите здесь текст о себе и о своем блоге. Отредактировать можно в файле sidebar.php. Не забудте, что файл после редактирования нужно сохранить строго в кодировке UTF-8.

Фото Flickr

Рубрики

Архивы

Календарег

Сентябрь 2010
Пн Вт Ср Чт Пт Сб Вс
« Фев    
 12345
6789101112
13141516171819
20212223242526
27282930