URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 96420
[ Назад ]

Исходное сообщение
"Apache default virtual host"

Отправлено MoHaX , 31-Дек-15 06:48 
Всем доброго дня!

В апаче созданы виртуальные хосты

<VirtualHost host1.ru:80>
    ServerAdmin admin@host1.ru
    DocumentRoot /usr/local/www/apache24/data/host1.ru
    ServerName host1.ru
    DirectoryIndex index.php index.html
</VirtualHost>

<VirtualHost host2.ru:80>
    ServerAdmin admin@host2.ru
    DocumentRoot /usr/local/www/apache24/data/host2.ru
    ServerName host2.ru
    DirectoryIndex index.php index.html
</VirtualHost>

Есть задача заворачивать на этот сервер http запросы пользователей при обращении их к другим сайтам, т.е. пользователь набирает в браузере www.mail.ru, а маршрутизатор меняет ему dst host и трафик летит на этот апач, там отрабатывает либо редирект в .htaccess либо js c window.location на куда мне надо. Трафик заворачивается нормально, в логах апача запросы есть.
Проблема следующая, при попытке зайти на сервер по ip адресу он почему-то показывает один из вируальных хостов, а не свой дефолтовый пейдж. Как сделать так, что бы любые запросы к серверу кроме указанных виртуальных хостов попадали бы в некий дефолтовый вирутал хост?  

<VirtualHost _default_:80>
    DocumentRoot /usr/local/www/apache24/data/default
</VirtualHost>
Не помогает. Где я туплю?


ОС FreeBSD 9.3
Apache 2.4 (из портов)


Содержание

Сообщения в этом обсуждении
"Apache default virtual host"
Отправлено Square1 , 31-Дек-15 09:16 
> Всем доброго дня!

дефолтный -это тот что описан первым



"Apache default virtual host"
Отправлено lavr , 31-Дек-15 14:14 
>[оверквотинг удален]
> Проблема следующая, при попытке зайти на сервер по ip адресу он почему-то
> показывает один из вируальных хостов, а не свой дефолтовый пейдж. Как
> сделать так, что бы любые запросы к серверу кроме указанных виртуальных
> хостов попадали бы в некий дефолтовый вирутал хост?
> <VirtualHost _default_:80>
>     DocumentRoot /usr/local/www/apache24/data/default
> </VirtualHost>
> Не помогает. Где я туплю?
> ОС FreeBSD 9.3
> Apache 2.4 (из портов)

http://httpd.apache.org/docs/2.4/vhosts/

ничего необычного:
1. ip-based virtual hosts
2. name-based virtual hosts
3. mix 1. + 2.

в этом и проблема


"Apache default virtual host"
Отправлено ALex_hha , 02-Янв-16 21:18 
> Как сделать так, что бы любые запросы к серверу кроме указанных виртуальных
> хостов попадали бы в некий дефолтовый вирутал хост?

я обычно дефолтный vhost описываю в файле под называнием 1.default.conf.

P.S.
посмотреть какой vhost является дефолтным можно в выводе


# apachectl -t -D DUMP_VHOSTS
VirtualHost configuration:
wildcard NameVirtualHosts and _default_ servers:
*:80                   is a NameVirtualHost
         default server gl-hooks.example.net (/etc/httpd/conf.d/hooks.conf:1)
         port 80 namevhost gl-hooks.example.net (/etc/httpd/conf.d/hooks.conf:1)
                 alias example.net
                 alias www.example.net
         port 80 namevhost mantis.example.net (/etc/httpd/conf.d/mantis.conf:1)
                 alias bt.example.net
Syntax OK