ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: nginx.conf *.domain.com


  • To: nginx-ru@xxxxxxxxx
  • Subject: Re: nginx.conf *.domain.com
  • From: Sergey Shepelev <temotor@xxxxxxxxx>
  • Date: Wed, 18 Nov 2009 16:38:38 +0300
  • Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:message-id:subject:from:to:content-type :content-transfer-encoding; bh=dYubPo02eIL6Uqwv5Rd1+dmTuk8itKnMm0iAkaC88kc=; b=sx/fvrwaIEQYp0YKX7OdcPmgDV7rtpehLfkDI0+l8kzpyDqm4Kk9/OIb9ljSxOlJMe 4McDtzpph+rJCvXaMZNkzTDm8TNmfOZ2U0xhfAO0VaHBQUTR5wuWjbyAPdW3seqDPY67 ekqyWpN40F8RNqwS4O59LNUwrNOBvKprvFOZs=
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type:content-transfer-encoding; b=Ms02xmtkUmmAEequ5WaF/ux2hBuyovfLQV8vuyyE4wESTNzYLHVL6SlgQUQmQP+Yhl NFCpQF+aoQ6UYbRFqL0ctQkORILgphKVaHNe6ITKLjuTn1JWSqUePXWCk4W3lfjR+gw0 xVf6xrIlaTTNlvRYQB+NM1jKGOQruQYAFgjjw=
  • In-reply-to: <cdd4b4fe14fd946cfa87ab51325cdcaf.NginxMailingListRussian@xxxxxxxxxxxxxxx>
  • References: <cdd4b4fe14fd946cfa87ab51325cdcaf.NginxMailingListRussian@xxxxxxxxxxxxxxx>

2009/11/18 Yuzik <nginx-forum@xxxxxxxx>:
> Здраствуйте, у меня возникла такая проблема:
> У меня есть запись в конфиге на счет домена:
>
> 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
>
>
>


 




Copyright © Lexa Software, 1996-2009.