Pregunta

Estoy intentando crear una serie de sitios que se ejecuten como una sola aplicación, pero que tengan diseños diferentes (para localizarlos).

Mi idea es asignar nombres de dominio separados a un sitio.P.ej:www.mysite1.com se asigna a www.mysite.appspot.com/mysite1 y www.mysite2.com se asigna a www.mysite.appspot.com/mysite2

Supongo que debe haber un patrón de URL o algo así para pasar a un servlet el nombre del sitio desde web.xml.Me gustaría que URL como www.mysite.appspot.com/mysite1/forumpost/3/ pudieran ser manejadas por el mismo servlet que www.mysite.appspot.com/mysite2/forumpost/3/.Lo ideal sería pasar el nombre del sitio como parámetro al servlet.

Seguramente hay alguien que ha hecho esto antes, o alguna forma estándar de hacerlo.Tengo una idea confusa sobre cómo analizar la URL para eliminar el nombre del sitio, pero soy bastante nuevo en servlets, etc. y pensé que alguien podría arrojar algo de luz sobre esta situación.

¡Gracias!

¿Fue útil?

Solución

No se puede asignar sus propios subdominios de aplicaciones appspot.com (por ejemplo, foo.mysite.appspot.com), pero se puede mapear dominios arbitrarios a su aplicación directa, como www.mysite1.com y www.mysite2 .com - acaba de añadir a todos ellos como alias de su cuenta de Google Apps, y luego asignarlos a la aplicación de App Engine. Una vez que tenga que hacer, sólo tiene que comprobar el contenido de la cabecera Host en su aplicación a las peticiones a los manipuladores adecuados (o no variar el contenido que regrese).

Otros consejos

Intente usar un javax.servlet.Filter y reenviar a las páginas específicas del idioma según el encabezado de solicitud HTTP 'Accept-Language' (Creo que ese es el indicado).Puedes conseguirlo con una llamada a javax.servlet.HttpServletRequest.getHeader(String).

De esta manera, su sitio tiene una única URL y la separación en páginas específicas del idioma se maneja internamente.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top