Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Dynamically configured mass virtual hosting
- To: <nginx-ru@xxxxxxxxx>
- Subject: Dynamically configured mass virtual hosting
- From: Лапочкин Константин <kostenl@xxxxxxxxx>
- Date: Wed, 9 Apr 2014 17:37:07 +0600
- Content-language: ru
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:subject:date:message-id:mime-version:content-type :content-transfer-encoding:thread-index:content-language; bh=8ytofknT0Vd87GAxN4mGXZ+1a4EgW2jk70hFwPWwn34=; b=DIv0WICPXomEnHvmUcpaSRxGsKPMYRALiT9FPzZsXJ72ebZJz0ugxxPaiyxRovEDys udWqEp/7KU62RYgdxsuxQmayogoIYIQl+pA9eJwVjQoX4DjaYVVgOJkZQaPGIpP3Zdu5 tXi4NimkFHwIrblpFYF4QM3Q22XKNEHxP1Nk39P476pkVgJRjbXGWK7sWch1qoyaI961 I4khmfvllfpLeSUzaGO3BTqN+blkies27tSPDAhmlgzV3a+Ijd5I5ke/918MlmRr+SJ4 1+TaHx8E6pn7lF5l3Nztf+nxuhDDbXMz0ex/kI1zmJm+fy9RSB1D3Cf0bjOkGnKwSxcG Iw+Q==
- Thread-index: Ac9T5VI0v4xQBZpWS1yiSBDG7OAlgg==
Добрый день.
Для части своих проектов используем связку nginx + apache с использованием в
apache mod_vhost_alias. Это удобно для доступа к серверам с именем типа
example.*.domain.ru где под звёздочкой подставляется имя проекта . Тогда
добавление нового проекта не требует правки конфига веб-сервисов. При этом
конфигурация выглядит примерно следующим образом:
На nginx проксирование с кэшированием:
server {
server_name ~^example\.[^.]*.domain.com;
location ~*
\.(bmp|ico|jpg|png|jpeg|gif|css|js|mp3|flv|swf|exe|wmv|zip|pdf|doc|rar|ppt|x
ls|MP3|JPG|avi|woff|bin|img)$ {
proxy_cache zone;
proxy_pass http://nodes_ example;
include include/proxy.conf;
expires 1d;
}
location / {
proxy_pass http://nodes_ example;
include include/proxy.conf;
}
}
В apache2 включен модуль vhost_alias и конфиг выглядит следующим образом:
<VirtualHost *:80>
ServerName example.domain.ru
ServerAlias example.*.domain.ru
VirtualDocumentRoot /var/www/projects/%2/data
<Directory /var/www/projects/%2/data>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
</VirtualHost>
Где в переменную %2 подставляется соответсувующая часть fqdn сервера. Более
подробно http://httpd.apache.org/docs/2.2/ru/vhosts/mass.html
Таким образом, добавив в директорию /var/www/projects/ папку с новым
проектом получаем рабочий сайт.
А теперь проблема: часть проектов переводим на связку nginx + php-fpm. При
этом задание рутовой директории ложится на nginx. Как так же красиво и легко
сделать задание root в конфиге nginx?
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru
|