Установка nginx как front-end к apache в Debian / Ubuntu - 2

Добавить в google.com bobrdobr.ru del.icio.us technorati.com linkstore.ru news2.ru memori.ru moemesto.ru


Предыдущая часть: Установка nginx как front-end к apache в Debian / Ubuntu

Установка и настройка Apache

Установка Apache

Установка проста:

$ sudo aptitude install apache2

Настройка Apache

Корректируем конфигурационный файл:

$ sudo vim /etc/apache2/apache2.conf

Необходимо найти и скорректировать следующие строки (при отсутствии добавить):

# Таймаут 90 секунд
Timeout 90

# Выключаем KeepAlive
KeepAlive Off

# Имя сервера
ServerName debianworld.ru

Перезагружаем apache:

$ sudo apache2ctl graceful

Проверяем корректную настройку apache, открываю в браузере: "http://192.168.0.1" (IP той машины, где был установлен apache). Должно появиться "It works!".

Отключаем хост по умолчанию:

$ sudo a2dissite 000-default

Настраиваем apache на работу с портом 8080, а не 80:

$ sudo vim /etc/apache2/ports.conf

Должен иметь вид:

NameVirtualHost *:8080
Listen 8080

Перезагружаем apache, nginx:

$ sudo apache2ctl graceful
$ sudo /etc/init.d/nginx start

Настройка mod_rpaf

Теперь, если посмотреть в логи apache, то там все запросы будут идти с адреса front-end'a. Чтобы это исправить, необходимо установить модуль mod_rpaf:

$ sudo aptitude install libapache2-mod-rpaf

И настроить его:

$ sudo vim /etc/apache2/mods-enabled/rpaf.conf

Должен выглядеть примерно так:

<IfModule mod_rpaf.c>
    # Включаем модуль
    RPAFenable On

    # Приводит в порядок X-Host
    RPAFsethostname On

    # Адрес фронтенда (nginx)       
    RPAFproxy_ips 127.0.0.1 192.168.0.1
</IfModule>

Перезагружаем apache:

$ sudo /etc/init.d/apache2 force-reload

Настройка виртуального хоста в Apache

Создаем файл виртуального хоста:

$ sudo vim /etc/apache2/sites-available/debianworld.ru

Приблизительно следующего содержания:

<VirtualHost *:8080>
    # Осн. настройки домена
    ServerAdmin admin@debianworld.ru
    ServerName www.debianworld.ru
    ServerAlias debianworld.ru

    <Directory /home/site/debianworld.ru/apache/>
        Order deny,allow
        Allow from all
    </Directory>

    LogLevel warn
    ErrorLog  /home/site/debianworld.ru/logs/apache_error.log
    CustomLog /home/site/debianworld.ru/logs/apache_access.log combined

   # Остальные настройки
   # ...
</VirtualHost>

С описанием правил настройки виртуальных хостов для apache можно ознакомится, например, тут

Включаем новый хост:

$ sudo a2ensite <domain name>
$ sudo /etc/init.d/apache2 reload

Вопросы по теме ...

Есть еще вопрос?