2015-06-17 4 views
1

У меня проблема с веб-сервером Domino с приложением XPages, которое размещается за некоторым обратным прокси. Проблема в том, что прокси перенаправляет все запросы с URL-адреса, например h2tps: // organization/test_server /, на веб-сервер Domino.Domino Xpages с обратным прокси

Это делает все ссылки в приложении brocken. И я не знаю, как это исправить.

Например, попытка Логин будет перенаправлен на сервер в h2tps: //organization/names.nsf Вход вместо h2tps: //organization/test_server/names.nsf Войти

Есть ли у Вас Идея, как это исправить?

ответ

3

При использовании обратного прокси-сервера мы рекомендуем с неизменным исходным URL-адресом. Поскольку многие переадресации, запросы Ajax, cookie тесно связаны с URL-адресом, если URL-адрес изменяется, почти необходимо перейти к изменению кода.

Эта проблема особенно серьезная в Domino, потому что в большом количестве кода Javascript, который будет использоваться в абсолютном пути, например /names.nsf. В качестве сравнения приложений Java в целом будут использоваться относительные пути (например, ../login).

Фактический способ достижения URL неизменным: карта доменное имя исходного сервера домина (например test.domino.xxx), для обратного прокси-сервера и обратный прокси-сервер с помощью заголовка HTTP компьютера, для определения пересылается на который серверный сервер, без необходимости добавления дополнительного пути (например, test_server).

В примере с IBM WebSeal эта конфигурация называется virtual host junctions.

1

Вы создали документ сайта на сервере Domino?

+0

Да, я создал один. У меня есть права администратора на сервере и могу что-то с ним делать. Но я не могу контролировать обратный прокси. – Tolbxela

+1

Вам нужно будет поговорить с прокси-ребятами. Они забыли включить правила перезаписи, которые заботятся о возвратах URL. Это прокси-работа. Не пытайтесь «взломать» его – stwissel

0

Я решил проблему с некоторыми усилиями.

  1. Сначала я переместил БД в папку/test_server /.
  2. Затем я изменил все статические ссылки HTML, чтобы использовать/test_server /.
  3. С опцией xsp.application.context.proxy = test_server Я изменил пути для внутренних ресурсов библиотеки XPages и Extensions.
  4. В конце я должен добавить некоторые правила подстановки в Domino , чтобы предотвратить дублирование путей, например/test_server/test_server /.

Теперь это работает хорошо.

Предложение прокси-команды заключалось в использовании перезаписи URL-адресов на веб-сервере. Это можно сделать с Domino, без сомнения, но требует разработки DNSAPI Addon (dll, написанной на C). И это не выглядит для меня легкой задачей.

В любом случае, большое спасибо за вашу помощь!

Смежные вопросы