Можно ли сопоставить URL корневого домена с контроллером Grails? - PullRequest
0 голосов
/ 08 апреля 2010

Давайте рассмотрим пример: проект grails, myproj, развернут в Tomcat 6. Доступ к нему можно получить в любом месте по этой ссылке: http://www.mycompany.com/myproj.

Допустим, мы приобрели другой домен, http://newcompany.com,, и мы хотели бы указать на http://www.mycompany.com/myproj/url.

Если я перейду к http://newcompany.com/12345,, это должно быть то же самое, что и http://www.mycompany.com/myproj/url/12345.

Может кто-нибудь сказать мне, если это возможно? Как это реализовать (изменить конфиг Tomcat 6, добавить код в UrlMappings.groovy)?

Заранее спасибо.

Ответы [ 3 ]

2 голосов
/ 08 апреля 2010

Наличие двух доменов, указывающих на один и тот же сайт, просто, если вы подключаете Tomcat к Apache и используете переписывание URL через mod_rewrite и / или mod_jk.

Также возможно добавить псевдонимы в конфигурацию tomcat, хотя я не думаю, что вы можете иметь один псевдоним с контекстным путем и один в корне, используя только Tomcat, так что вам может понадобиться, чтобы ваше приложение знало о различных хостах ,

Более важный вопрос: действительно ли вам нужны 2 домена для одного экземпляра, поскольку это может запутать пользователей и поисковые системы и почти наверняка приведет к ошибкам.

1 голос
/ 19 апреля 2010

Вы можете использовать UrlMappings.groovy, чтобы сопоставить контроллер с корневым индексом.Например, я хотел, чтобы мой корневой индекс "/" контролировался моим loginController.groovy.Поэтому я добавил запись UrlMapping "/" (контроллер: 'login', action: 'index')

UrlMappings.groovy показан ниже:

class UrlMappings {
    static mappings = {
        // MJC - added this in an attempt to give a controller some control
        // over the root.
        "/"(controller:'login',action:'index')

      "/$controller/$action?/$id?"{
            constraints {
                // apply constraints here
            }
        }
        // "/"(view:"/index")
        "500"(view:'/error')
    }

}

Надеюсь, это поможет ...

  • Monte C. Concept Automation Support, Inc.
0 голосов
/ 09 апреля 2010

Существует веб-фильтр Java под названием URLRewrite , который, вероятно, будет делать то, что вы хотите - он выполняет ту же работу для Tomcat, что и mod_rewrite для Apache.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...