weblogic & OHS: как переслать один URL на другой сервер - PullRequest
0 голосов
/ 15 мая 2018

У меня есть среда с запущенным Oracle WebLogic и OHS.

В файле mod_wl_ohs.conf у меня есть следующее (помимо конфигурации для других приложений)

  <Location /application1>
    SetHandler weblogic-handler
    WLLogFile /opt/logs/ application1.log
    Debug OFF
    WebLogicHost 127.0.0.1
    WebLogicPort 23666
  </Location>

Это прекрасно работает, исервер, прослушивающий 23666 с помощью фактического приложения application1, обрабатывает такие запросы, как «http://example.com/application1/*”.

. Теперь я хотел бы перенаправить все запросы для определенного шаблона URL-адреса в другой домен (необязательно в том же домене).сервер), но продолжая обрабатывать все другие запросы.
Перенаправление: http://example.com/application1/MagicKeyword/*
продолжить: http://example.com/application1/NotTheKeyword* или http://example.com/application1/AlsoNotKeyword/*

Каков правильный подход для этого?
Я игралвокруг с некоторыми правилами mod_rewrite, кажется, они не влияют и не разрушают все (в httpd.conf).Я также читал, что мы не должны использовать правила mod_rewrite внутри тега location (сейчас не могу найти ссылку).
Что еще я могу сделать?

Редактировать: Итак, в конце концов я обнаружил свою ошибку (как-то неправильный синтаксис, который не помешал запуску сервера (как обычно).

Итак, я мог: в httpd.conf

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteRule "(.*)/application1/MagicKeyword/(.*)$" "https://www.example.org" [NC,L,R=301]
</IfModule>

или в теге Location добавьте:

RewriteEngine On
RewriteRule "(.*)/MagicKeyword/(.*)$" "https://www.example.org" [NC,L,R=301]

Почему я предпочитаю одно другому, есть ли что беспокоить?

1 Ответ

0 голосов
/ 16 мая 2018

Два других варианта вы можете рассмотреть. Вы можете использовать порядок расположения тегов:

<Location /application1/MagicKeyword>
    WebLogicHost otherhost
</Location> 
<Location /application1>
    WebLogicHost 127.0.0.1
</Location> 

Вы можете указать WebLogic исключить путь (см. https://docs.oracle.com/middleware/1212/webtier/PLGWL/plugin_params.htm#PLGWL473):

<Location /application1>
    WebLogicHost 127.0.0.1
    WLExcludePathOrMimeType /application1/MagicKeyword
</Location> 
<Location /application1>
    WebLogicHost otherhost
</Location> 
...