Добавление i18n с использованием техники подпапок и прокси
У меня есть веб-приложение, работающее в контексте "/", и я хочу теперь интернационализировать его, используя технику подпапок.
Я хочу, чтобы тот же сайт ранее размещался под
http://www.mysite.com/
Теперь подавать разные языки контента под URL
http://www.mysite.com/en/<br>
http://www.mysite.com/fr/<br>
http://www.mysite.com/de/<br>
Я думаю добавить Apache Proxy перед Tomcat, чтобы не трогать мое веб-приложение.
Допустим, приложение уже поддерживает i18n на основе файла cookie, присутствующего в запросе, который идентифицирует язык.
С помощью правил Apache Proxy и Rewrite я мог бы удалить язык из запроса и добавить этот файл cookie с извлеченным языком.
Мне нужно, чтобы Apache конвертировал перенаправления, поступающие из Tomcat, добавив определенный язык (passProxyReverse
?)
Мне также нужно, чтобы HTML, созданный моим приложением, как-то анализировался, чтобы ссылки выглядели как http://www.mysite.com/folder/contact.html
модифицированы в http://www.mysite.com/de/folder/contact.html
(mod_proxy_html
?)
Я думал о других решениях, таких как развертывание одного и того же веб-приложения в разных контекстах и совместное использование сеансов с помощью memcache... или непосредственное управление разделением этой языковой подпапки с помощью некоторого фильтра в веб-приложении и некоторого пользовательского JSTL и т. Д.
Все решения кажутся слишком сложными.
То, чего я пытаюсь добиться, - это использовать технику подпапок по причинам SEO и сделать так, чтобы мое веб-приложение не слишком осознавало это.
Я не понимаю, слишком ли я усложняю это..
Есть ли лучшие / более простые способы достижения того, что мне нужно?