Есть ли в спецификации Servlet, Tomcat или Wicket что-нибудь, что позволило бы веб-приложению, работающему за mod_proxy для определять непроксифицированный URL-адрес запроса ?
Нам нужно отправитьэлектронные письма со ссылками на них.Я использовал следующий фрагмент Wicket для построения URL-адресов для определенных страниц в приложении:
String relURL = RequestCycle.get().getRequest().getRelativePathPrefixToWicketHandler();
RequestUtils.toAbsolutePath(relURL);
Поскольку электронные письма не возвращаются через прокси-сервер, конечно, URL-адреса не возвращаются.написано, и в конечном итоге выглядит как http://localhost/...
.
Сейчас самое лучшее, что я могу сделать, - это жестко закодировать URL-адреса нашего производственного сервера, но это настраивает нас на некоторые проблемы с отладкой при работе на машинах разработки / тестирования.
Использование InetAddress.getLocalHost().getHostName()
на самом деле не является решением, поскольку скорее всего он вернет prod1.mydomain.com
или что-то подобное, а не mydomain.dom
, из которого, вероятно, возник запрос.