2008-10-08 12 views
15

He estado bromeando con Google App Engine durante unos días y tengo una pequeña aplicación de hobby que quiero escribir e implementar.¿Cómo usan las aplicaciones de Google App-Engine las personas con sus propios dominios?

Sin embargo, me gustaría configurarlo para que los usuarios no accedan directamente a la aplicación a través de appspot.com.

¿Lo está alojando a través de Google Apps y luego apuntando a mi propio dominio, el único camino a seguir? Lo miré un poco y me pareció complicado implementarlo, pero tal vez me estoy perdiendo algo.

Mi otro pensamiento fue escribir la pieza del motor de aplicación como un servicio web más genérico.

Entonces podría tener la pieza que mira al usuario alojada en cualquier lugar, escrita en cualquier idioma, y ​​hacer que consulte la url de appspot.com.

¿Alguien tiene algo de suerte con el enfoque del servicio web?

+1

Se me ocurrió un esquema que me gusta y escribí algunas publicaciones en el blog sobre él. Publicaré enlaces a las publicaciones si alguien está interesado. –

+0

Eso sería útil, ¿verdad? –

+0

Claro. Escribí 3 publicaciones bastante simples al respecto. –

Respuesta

1

OK, ahora estamos en el final de 2017 y las cosas son muy diferentes con respecto a App Engine y los dominios personalizados. ¡Es fácil ahora!

Vaya al panel del motor de aplicaciones para su aplicación y elija Configuraciones, luego vaya a la pestaña Dominios personalizados. A partir de ahí, elija Add custom domain.

La parte difícil es que Google necesita verificar que controlas el dominio, por lo que te piden que ingreses un registro TXT en el DNS de tu dominio. Una vez que haga eso y lo busque en Google, se "verificará" como el propietario del dominio.

Después de eso, Google le dará un montón de registros A y AAAA (para IP6) para poner en su DNS. Una vez que hayas hecho eso, deberías ser bueno para ir.

7

Para hacer esto, creo que necesita estar usando Google Apps y tiene una configuración de dominio personalizado para Google Apps. Entonces, usted deploy your app en su dominio de Google Apps.

+3

Hurmmm ... Me encantaría no tener que usar Google Apps. Será interesante ver si alguien ha tenido éxito con otros enfoques. –

+0

No parece ser opcional en función del enlace "Implementar la aplicación" que aparece arriba. –

+0

No tiene que usar Google Apps, ¿verdad? Regístrese y no use ninguno de sus servicios. – ceejayoz

8

El motivo por el que Google Apps es obligatorio es porque necesita un lugar para a) verificar que posee el dominio (de lo contrario, puede apuntarlo al motor de la aplicación, puede secuestrarlo agregándolo a mi cuenta) yb) establecer las asignaciones de dominio (qué subdominios apuntan a cuál de sus aplicaciones appengine).

Dado que esto ya existe en las aplicaciones, parece una tontería duplicarlo en AppEngine.

Como se ha señalado, no cuesta nada, y no es necesario "mover" nada a Google. Simplemente creó un registro cname con un nombre aleatorio para verificar que posee el dominio, y un cname para el subdominio que desea apuntar a App Engine. Esto solo lleva unos minutos, y una vez hecho, se hace para siempre.

Nota: Si aloja su sitio en otro lugar y utiliza servicios web, debe escalar el sitio/interfaz. Si aloja el motor de aplicación, se consigue esto para libre :-)

escribí un artículo en mi blog sobre la reorientación * .appspot.com dominios a su dominio personalizado para mantener su imagen de marca:

http://blog.dantup.com/2009/12/redirecting-requests-from-appid-appspot-com-to-a-custom-domain

Aquí es
+2

+1 para dar una explicación * por qué * El uso de Google Apps en realidad se requiere, a pesar de que la pregunta no ha estado activa durante un par de meses. –

4

instrucciones oficiales de Google sobre cómo hacerlo:

http://code.google.com/appengine/docs/domain.html

he utilizado este proceso para un par de sitios y es fácil y sin dolor, siempre y cuando tenga el control sobre el r DNS ecords para tu dominio (deberías).

1

Se puede hacer fácilmente usando el método request.getRequestURI(). Si la URL no incluye su dominio, simplemente redirigir a la URL deseada usando

resp.sendRedirect("<your domain>") 

De lo contrario cargar una página de error utilizando

request.getRequestDispatcher("<error-page>").forward(request, response); 
Cuestiones relacionadas