Кажется нашел причину. Данные о проживании ip = домен мне предоставлены заказчиком и с ошибкой.
По факту на ip_no2 приходили правильные запросы по givemeBBB.tld и "неправильные" по files-BLABLA.tld и BLABLAfiles.tld.
В это же время, в nginx была указано, что files-BLABLA.tld и BLABLAfilestld живут на ip_no1.
Запросы от клиентов есть, а nginx и не знает, о том что на ip_no2 надо отвечать на files-BLABLA.tld и BLABLAfilestld.
Собственно вопрос по итогам - предположим схему:
domain1.tld on ip1 => access_log log1 domain2.tld on ip2 => access_log log2
Как запросы, идущие на ip2 с чужими domainN.tld, сливать не в лог2, а в другое место?
Навешать listen+default на ip1,ip2,...,ipN в другой декларации server?
29 октября 2009 г. 15:11 пользователь Igor Sysoev <is@xxxxxxxxxxxxx> написал:
On Thu, Oct 29, 2009 at 02:35:09PM +0300, Andrew Kopeyko wrote:
> Костенко Евгений wrote:
> > Добрый день!
>
> Добрый день!
>
> > есть два vhost'а, со схожим названием доменов - givemeAAAA.tld и
> > givemeBBB.tld.
> > vhost'ы декларирированы следующим образом образом:
> >
> > server {
> > listen server_ip_no1:80;
> > server_name www.givemeAAAA.tld givemeAAAA.tld;
> >
> > access_log /var/log/nginx/givemeAAAA.tld.access.log main buffer=1m;
> >
> > set $root_path /some/dir/vhosts/givemeAAAA.tld/public_html;
> > include /usr/local/etc/nginx/common/*.conf;
> > }
> >
> > server {
> > listen server_ip_no2:80;
> > server_name www.givemeBBB.tld givemeBBB.tld;
> >
> > access_log /var/log/nginx/givemeBBB.tld.access.log main buffer=1m;
> >
> > set $root_path /some/dir/vhosts/givemeBBB.tld/public_html;
> > include /usr/local/etc/nginx/common/*.conf;
> > }
> >
> > в логах по givemeBBB.tld всплывают урлы от givemeAAAA.tld.
> >
> > это нормальное поведение в данной ситуации, т.к. я (вероятно?) что-то
> > лишнего накрутил в конфигах nginx?
> > или же это предположительный баг? какая информация еще может быть
> > необходима?
>
> А вы добавьте логирование $http_host - и станет ясно "кто виноват",
> nginx или клиент.
Это можно узнать и из error_log'а: там пишется и server, в контексте
которого обрабатывается запрос, и пришедший заголовок host.