Apache as backend web server - andyceo/documentation GitHub Wiki

Инструкция действительна для Ubuntu 13.10, Ubuntu 14.04 и Apache 2.4.

Установка необходимых модулей

sudo aptitude install apache2 libapache2-mod-rpaf

Настройка модулей

Для нормальной работы, потребуются только следующие модули:

  1. alias - для работы директивы Alias (@todo уточнить)
  2. authz_host - для работы директив Order, Allow, Deny
  3. dir - для работы директивы DirectoryIndex
  4. env - для работы директив PassEnv, SetEnv, UnsetEnv
  5. mime
  6. reqtimeout - для работы директивы RequestReadTimeout
  7. rewrite - для работы директив RewriteXXX
  8. rpaf - для передачи настоящего IP-адреса
  9. status - для получения страницы со статусом веб-сервера (необязательно для работы приложений)

Также могут потребоваться, в зависимости от ваших нужд, следующие модули:

  • php5 для PHP5
  • python для Python

Все остальные следует отключить.

sudo a2dismod auth_basic authn_file authz_default authz_groupfile authz_user autoindex cgi deflate negotiation setenvif
sudo a2enmod alias authz_host dir env mime php5 python reqtimeout rewrite rpaf status

Ссылки

Настройка Apache

Нужно изменять только те конфигурационные файлы, что описаны ниже! Если файла нет - значит создать. Пути к файлам заданы относительно основной папки с настройками Apache (обычно это /etc/apache2). Если про тот или иной файл ничего не сказано - значит оставить его как есть, без изменений.

  1. Скопировать файл backend.conf в /etc/apache2/conf-available/backend.conf

  2. Подключить конфигурацию

     sudo a2enconf backend
    
  3. В файле ports.conf изменить Listen и NameVirtualHost (deprecated!) на те ip и порты, куда вы определили. Обычно ограничивают апач так, чтобы он принимал запросы только с локалхоста:

     NameVirtualHost 127.0.0.1:8080 # deprecated
     Listen 127.0.0.1:8080
    
  4. В файле /etc/apache2/sites-available/000-default.conf изменить VirtualHost в соответствии с предыдущим пунктом про ports.conf. Например, сделать так:

     <VirtualHost 127.0.0.1:8080>
     
     ...
     
     </VirtualHost>
    
  5. Перезапустить Apache

     sudo service apache2 restart
    

Полезные ссылки

⚠️ **GitHub.com Fallback** ⚠️