У меня есть блок http, в который я включаю виртуальные хосты для разных доменов, размещенных на одном сервере. Для каждого виртуального хоста я делаю:
listen domain.com:80;
Теперь domain2.com работает нормально. Однако когда я делаю www.domain2.com, он показывает страницу для domain1.com!
Как правильно настроить nginx? Это имеет какое-то отношение к www
такое CNAME или запись A?
server {
listen WHATEVER_IP:80;
server_name domain2.com;
... rest of config for domain2.com goes here
}
server {
listen WHATEVER_IP:80;
server_name www.domain2.com;
... rest of config for www.domain2.com goes here
}
Это будет работать независимо от того, совпадают ли два IP-адреса или нет. Вы можете просто использовать listen 80;
если вам не нужны разные серверы на разных IP-адресах и все основано на именах.
Похоже, что в серверном блоке можно делать следующее:
listen 80;
server_name domain.com www.domain.com;