Страница 1 из 1

Apache + virtual hosts

Добавлено: 2015-02-25 12:02:14
logout_90
Господа, доброго времени суток!

Есть желание сделать несколько сайтов типа domain.com, www.site.domain.com и т.п.
Понимаю, что стоит копать в сторону VirtualHosts apache, но есть вопрос:

Локальная сетка находится за роутером, есть доменное имя, есть статический ip адрес. Домен domain.com возвращает адрес 1.2.4.5, домен www.site.domain.com также возвращает 1.2.4.5. Простым пробросом портов ничего не добиться, поскольку в таком случае юзерам придется стучаться на www.site.domain.com: port>.
По сути, мне интересно, каким образом можно сделать что то типа:

Код: Выделить всё

# host lissyara.su
lissyara.su has address 91.227.16.22

Код: Выделить всё

# host forum.lissyara.su
lissyara.su has address 91.227.16.22
При этом lissyara.su и forum.lissyara.su два разных сайта на одном ip адресе, которые слушают порт 80
Буду благодарен за любую информацию

Apache + virtual hosts

Добавлено: 2015-02-25 12:26:29
Гость
Ну собственно виртуал хост это и делает, а что с ним непонятно? Доков туча в сети...

Apache + virtual hosts

Добавлено: 2015-02-25 12:38:17
logout_90
Гость писал(а):Ну собственно виртуал хост это и делает, а что с ним непонятно? Доков туча в сети...
Сама технология не понятна ))
Ну вот откуда апач будет знать, что отдавать хосту нужно именно виртуал хост www.site.domain.com, а не domain.com? Ведь и там и там порт 80, и там и там ип адрес одинаковый...

Правда, возможно, я не знаю чего то про http запросы и там указано к какому домену обращается хост?

Apache + virtual hosts

Добавлено: 2015-02-25 12:47:38
Bayerische
http://httpd.apache.org/docs/2.0/ru/vho ... based.html
Some ancient clients are not compatible with name-based virtual hosting. For name-based virtual hosting to work, the client must send the HTTP Host header. This is required by HTTP/1.1, and is implemented by all modern HTTP/1.0 browsers as an extension.
http://www.w3.org/Protocols/rfc2616/rfc ... l#sec14.23

Apache + virtual hosts

Добавлено: 2015-02-25 12:55:21
logout_90
logout_90 писал(а): про http запросы
Гы... )) Сорри, разумеется про http заголовки.

Отправлено спустя 4 минуты 49 секунд:
Bayerische писал(а):http://httpd.apache.org/docs/2.0/ru/vho ... based.html
Some ancient clients are not compatible with name-based virtual hosting. For name-based virtual hosting to work, the client must send the HTTP Host header. This is required by HTTP/1.1, and is implemented by all modern HTTP/1.0 browsers as an extension.
http://www.w3.org/Protocols/rfc2616/rfc ... l#sec14.23
Спасибо! Я уже наткнулся на это RFC, но без ссылки нужный фрагмент искал бы долго ))
Да, так действительно понятней намного стало! Никаких пробросов, кроме 80 порта на сервак, он уже сам будет колупаться, разбирая хедеры.

Благодарю, Bayerische!

Apache + virtual hosts

Добавлено: 2015-02-25 13:01:13
Bayerische
На деле всё получается намного проще, чем описание принципов.
Действительно, веб сервер слушает 80-й порт, который можно пустить по удобному маршруту. Сам Апач понимает, к какому виртуалхосту обращаются.

Отправлено спустя 1 минуту 17 секунд:
То же самое происходит при проксировании, например, Nginx фронтэндом. Запросы просто отправляются чохом на порт Апача.

Apache + virtual hosts

Добавлено: 2015-02-25 13:31:10
logout_90
Bayerische писал(а): Запросы просто отправляются чохом на порт Апача
А что такое "чох"? Я не в теме немного )))

Apache + virtual hosts

Добавлено: 2015-02-25 14:42:18
Bayerische

Apache + virtual hosts

Добавлено: 2015-02-25 16:16:16
logout_90
Думал вобще, что это термин по типу "виртуалхост", "хедэр" :-D :-D :-D