Всем привет! Помогите решить задачу. Все свои знания я уже исчерпал.Начальная идея была такая:
firewal+apache из локалки бегал народ в интернет ну и страничка своя была. Все были довольны. Потом понадобилось страничку перенести на IIS. Так как реалный ИП был только один и использовался на фаирволе то я сделал редирект 80 порта на внутренний фэйк ИП (Win2K Server). Все работает и опять все довольны. Тепер о самой задаче. Как в эту схему вставить еще один сайт? Времмено я решил вопрос этот так. На Win2K сервере стоит IIS и слушает 80 прот, на том же сервере стоит схема apache+MySQL+PHP и слушает 81порт. Соответсвенно фаирвол редиректит 80 и 81 проты на Win2K server. Выглядит наглядно все так - заходим на www.domain.com попадаем на одну страницу (IIS) а заходим на www.domain.com:81 попадаем на другую страницу (apache).Вроде ничего но некрасиво не стильно, скажем так :). А как быть если в в будущем использоваться будет два домэйна? www.domain.com и www.domain2.com. При условии что первый должен висеть на IIS а второй на apache и порт хотелось бы иметь у обоих домэинов один стандарный.
>А как быть если в в
>будущем использоваться будет два домэйна? www.domain.com и www.domain2.com. При условии что
>первый должен висеть на IIS а второй на apache и порт
>хотелось бы иметь у обоих домэинов один стандарный.на своем рутере ставишь апача, в нем нужные виртальные хосты, которые перенаправляют запросы на внутрение сервера. большой плюс - части одного сайта можно обрабатывать разными серверами.
см. mod_proxy
>на своем рутере ставишь апача, в нем нужные виртальные хосты, которые перенаправляют
>запросы на внутрение сервера. большой плюс - части одного сайта можно
>обрабатывать разными серверами.
>см. mod_proxyУффф... а чуть по подробнее? Есть где примеры почитать?
>>на своем рутере ставишь апача, в нем нужные виртальные хосты, которые перенаправляют
>>запросы на внутрение сервера. большой плюс - части одного сайта можно
>>обрабатывать разными серверами.
>>см. mod_proxy
>
>Уффф... а чуть по подробнее? Есть где примеры почитать?1. поставить апача
2. сделать на нем требуемые виртуальные хосты - по портам или по именам
3. почитать доку на mod_proxy (в комплекте апача), тебе нужен "reverse proxy"пиши, какой конкретно пункт непонятен
>1. поставить апача
>2. сделать на нем требуемые виртуальные хосты - по портам или по
>именам
>3. почитать доку на mod_proxy (в комплекте апача), тебе нужен "reverse proxy"
>
>
>пиши, какой конкретно пункт непонятенНу пока пункт номер 2 немного непонятен. Где почитать как настраиваются виртуальные хасты с примерами.
Читай доки по httpd.apache.org. Пример есть в дефолтном httpd.conf
>Ну пока пункт номер 2 немного непонятен. Где почитать как настраиваются виртуальные
>хасты с примерами.ОК. Предполагая, что:
- на рутере (обзовем его 192.168.0.1) работает Апач, который распределяет запросы внутрь
- внутри сетки есть комп 192.168.0.2, на котором работает IIS который обслуживает один из сайтов (www.aaa.com), порт 80
- внутри сетки есть комп 192.168.0.3, на котором работает второй Апач, который обслуживает второй сайтов (www.bbb.com), порт 81Я использую 2.0.x, поэтому и конфиги привожу для него.
Конфигурация Апача на 192.168.0.1 (только отличия от дефолтной):
LoadModule proxy_module libexec/apache2/mod_proxy.so
LoadModule proxy_http_module libexec/apache2/mod_proxy_http.so
Listen *:80
NameVirtualHost *
<VirtualHost *>
DocumentRoot "/home/www/"
ServerName www.aaa.com
ProxyPass / http://192.168.0.2:80
ProxyPassReverse / http://192.168.0.2:80
</VirtualHost>
<VirtualHost *>
DocumentRoot "/home/www/"
ServerName www.bbb.com
ProxyPass / http://192.168.0.3:81
ProxyPassReverse / http://192.168.0.3:81
</VirtualHost>Конфиг не проверял, м.б. чего-нибудь пропустил, но идея и так видна.
Спосибо! Вроде понятно. Будет время буду пробовать. А пока такой вопрос. Если я вместо домэин имени www.bbb.com укажу ServerName 192.168.0.1 то при запросе http://192.168.0.1 перенаправит меня на http://192.168.0.3:81 ?
>Спосибо! Вроде понятно. Будет время буду пробовать. А пока такой вопрос. Если
>я вместо домэин имени www.bbb.com укажу ServerName 192.168.0.1 то при запросе
>http://192.168.0.1 перенаправит меня на http://192.168.0.3:81 ?Нет. Тогда убирай "NameVirtualHost *" и у виртуальных хостов прописывай IP вместо *.
Попробую описать суть проблемы. Может какое то другое решение появится.На сервере Win2K установлено два веб сервера, IIS (порт 80)и Apache (порт 81). Фаирвол (iptables) соответственно редиректит запросы www.domain.com и www.domain.com:81 на Win2K сервер. Проблема в том что многие пользователи которые ходят в инет через прокси не могут зайти на www.domain.com:81 их не пускает прокси. Как я понимаю он корявыми руками отконфигурирован. Как избавится от этой проблемы моими руками а не посылать пользователей к их админам.
если честно, то я просто не понял из этого поста что и как работает. но в любом случае iptables ничего не знает про домены. все его правила на уровне ip:port.
Теоретически я понимаю это так:просим у апача дай нам www.aaaa.com он перенаправляет на IIS 80 порт
просим у апача дай нам www.bbb.com он перенаправляет на ApacheWin32 81 порт.Данные о www.aaaa.com и www.bbb.com указываются в виртуальных хостах? Так я понимаю.
>Теоретически я понимаю это так:
>
>просим у апача дай нам www.aaaa.com он перенаправляет на IIS 80 порт
>
>просим у апача дай нам www.bbb.com он перенаправляет на ApacheWin32 81 порт.
>
>Данные о www.aaaa.com и www.bbb.com указываются в виртуальных хостах? Так я понимаю.Почти. Только он не перенаправляет, а в первом случае формирует запрос дальше (работает как прокся), а во втором случае сам отрабатывает. И еще - это Апач висит на 80-м порту, а IIS - на 81.
возможно только если ставить проксю.