Grails 2.0 изменен так, как он использует grails.serverURL для среды разработки и тестирования (как описано в разделе manual). Тем не менее, у меня было несколько problems с serverURL в отношении производственного развертывания на Tomcat. Там, кажется, несколько вариантов (режим производства) ServerURL:grails 2.0 - правильное использование сервераURL для производства?
(Добавлено) этот параметр является просто «дым и зеркала», так как Tomcat и Jetty есть методы управления, как URL обрабатывается для приложения, вплоть до уровня «App».
С его помощью можно указать сервер (как указывается в качестве «TODO» в Config.groovy)
Не используйте его, как указано here одним из Grails участников, т.е. «Это должно всегда быть в безопасности, чтобы удалить свойство serverURL и позволить Grails генерировать URL-адреса относительно текущего запущенного приложения ». Неясно, распространяется ли это на производство или нет (когда не создается электронная почта).
- Используйте другой метод, а именно grails.app.context, который не документирован в руководстве Grails 2.0, но описан в некоторых ссылках, here и here.
Не могли бы вы пояснить правильное использование serverURL и app.context, как для Jetty, так и для Tomcat (режим производства)?
Благодаря
Спасибо за подробный ответ. Отдельный, но связанный, у меня было много проблем с использованием UrlMapping простым способом, например. для доступа к странице html через спецификацию URI. Я создаю что-то вроде: «/ test2» (uri: «/test2.html»), но тогда grails не находит файл test2.html, даже если он находится в верхней части веб-приложения или каталога представлений. Вы знаете, как использовать это сопоставление? – Ray
... У меня сейчас это работает - URI. Не знаю, почему он никогда не работал раньше, но, похоже, теперь находит файл. – Ray
Это было очень полезно для поддержания совместимости между производством и развитием. Благодаря! – haventchecked