Ivan Dubrov wrote:
Pavel V. Rochnyack wrote:
1. Использовать mod_jk - несколько полегче и ИМХО правильнее чем
мод_прокси
1. mod_proxy_ajp вроде как ещё правильнее. Но это Apache 2.2,
насколько я понимаю.
2. Вот это:
> надо чтобы запрос _из_ домена test.com преобразовывался таким образом.
мне кажется не реальным, либо рулится средствами томката.
В общем случае лучше разделить по именам и не греть голову.
3.Есть еще другой вариант, звучит он как "с требуемых хостов (не
домена!)
завернуть файрволлом траффик с 80 на 81 порт апача, а оттуда на
требуемый томкат-сервис"
4. Ну и напоследок, беглый взгляд на правила реврайта и лог _не
находит_ зацикливания.
Alex Mestiashvili пишет:
есть tomcat слушает 8080
есть две директории с одним и тем же контентом .
надо чтобы запрос из домена test.com преобразовывался таким образом .
http://myserver/my_app -> http://myserver/my_app1
а запросы из всех остальных доменов так и оставались
http://myserver/my_app -> http://myserver/my_app
а потом еще через mod_proxy отправлялись к tomcat-у
пытаюсь для этого настроить apache с mod_proxy и mod_rewrite
NameVirtualHost *
<VirtualHost *>
RewriteEngine on
RewriteOptions Inherit
RewriteCond %{REMOTE_ADDR} ^1\.2.*$
RewriteRule ^(.*)$ - [S=2,L]
## тоесть если REMOTE_ADDR=хост из домена 1 то пропустить следующие
2 правила .
RewriteCond %{REMOTE_ADDR} ^.*$
RewriteRule /my_app(.*)$ http://%{SERVER_NAME}/my_app1$1 [P]
RewriteLog /var/log/apache2/rewrite.log
RewriteLogLevel 9
ProxyRequests Off
ProxyPass / http://localhost:8080/
ProxyPassReverse / http://localhost:8080/
CustomLog /var/log/apache2/proxy_log common
</VirtualHost>
вот такой вариант заработал
NameVirtualHost *
<VirtualHost *>
ProxyRequests Off
<Proxy *>
AddDefaultCharset off
Order allow,deny
Allow from all
</Proxy>
ProxyPass / http://localhost:8080/
CustomLog /var/log/apache2/proxy_log common
ProxyPassReverse / http://localhost:8080/
RewriteEngine on
RewriteCond %{REMOTE_ADDR}
!((192\.168\.194\..*$)|(14\.5\..*$)|(14\.30\..*$))
RewriteRule ^(.*)$ - [C]
# надо ограничить этим правилом , так как ограничения внутри
tomcat-a уже не работают так как доступ через proxy с localhost-а .
RewriteRule ^/myapp1(.*)$ /$1 [F,L]
RewriteCond %{REMOTE_ADDR} ^((192\.168\.194\..*$)|(14\.5\..*$))
RewriteRule ^/myapp(.*)$ /myapp1$1 [R,L] RewriteRule
"^/(.*)" "http://localhost:8080/$1" [P]
RewriteLog /var/log/apache2/rewrite.log
RewriteLogLevel 9
</VirtualHost>
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]