nginx.conf *.domain.com
Sergey Shepelev
temotor at gmail.com
Wed Nov 18 16:38:38 MSK 2009
2009/11/18 Yuzik <nginx-forum at nginx.us>:
> Здраствуйте, у меня возникла такая проблема:
> У меня есть запись в конфиге на счет домена:
>
> server {
> server_name domain.com *.domain.com
> .......
> }
>
> и мне нужно задействовать все поддомены, кроме files
> *.domain.com -> proxy_pass http://domain.com:8080/
> files.domain.com -> proxy_pass http://domain2.com:8080/
>
> писал перед конфигом что выше
> server{
> server_name domain2.com files.domain.com
> .......
> }
>
> всеравно сервер обрабатывает домен files.domain.com как proxy_pass http://domain.com:8080/ вместо proxy_pass http://domain2.com:8080/
>
> Вот собственно вопрос, как можно эту проблему решить? Были мысли на счет RegEx в server_name чтобы исключить только поддмоен files, но еще не пробовал, может быть у когото были подобные проблемы?
>
Строковые server_name ищутся не по порядку нахождения в конфиге.
Вариант:
map $http_host $name {
hostnames;
default 0;
files.domain.com 1;
}
server {
server_name .domain.com; # обратите внимание, нет звезды. Это чисто
косметическое изменение.
location / {
if ($name = 0) {
proxy_pass ...все домены;
}
if ($name = 1) {
proxy_pass ...для files;
}
}
> Posted at Nginx Forum: http://forum.nginx.org/read.php?21,23834,23834#msg-23834
>
>
>
More information about the nginx-ru
mailing list