Pergunta

Eu estou tentando criar uma série de sites que todos os executados como uma aplicação, mas têm projetos diferentes (para localizá-los).

A minha ideia é mapear nomes de domínio separados para o site. Por exemplo: www.mysite1.com mapeia para www.mysite.appspot.com/mysite1 e www.mysite2.com mapeia para www.mysite.appspot.com/mysite2

Eu estou supondo que deve haver um padrão de URL ou algo para passar um servlet o nome do site a partir de web.xml? Eu gostaria urls como www.mysite.appspot.com/mysite1/forumpost/3/ para ser capaz de ser manipulado pelo mesmo servlet como www.mysite.appspot.com/mysite2/forumpost/3/. Idealmente, eu gostaria de passar o nome do site como um parâmetro para o servlet.

Certamente há alguém que tenha feito isso antes, ou alguma forma padrão de fazer isso? Eu tenho uma ideia difusa sobre como analisar o url para levar o nome do site fora dele, mas eu sou muito novo para servlets etc e pensei que alguém pode ser capaz de lançar alguma luz sobre esta situação.

Obrigado!

Foi útil?

Solução

Você não pode mapear suas próprias subdomínios de appspot.com aplicativos (por exemplo, foo.mysite.appspot.com), mas você pode mapear domínios arbitrários para seu aplicativo diretamente, como www.mysite1.com e www.mysite2 .com - basta adicioná-los todos como aliases para sua conta do Google Apps, e, em seguida, mapeá-los para seu aplicativo app Engine. Uma vez que você tem que fazer, você só precisa verificar o conteúdo do cabeçalho do anfitrião em seu aplicativo para encaminhar solicitações para os manipuladores apropriados (ou não variar o conteúdo que você voltar).

Outras dicas

Tente usar um javax.servlet.Filter e de encaminhamento para as páginas específicas de linguagem com base no cabeçalho de solicitação HTTP 'Accept-Language' (eu acho que é a única). Você pode obter em que com uma chamada para javax.servlet.HttpServletRequest.getHeader(String).

Desta forma, o seu site tem um único URL e a separação em páginas específicas de linguagem é tratado internamente.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top