TUTORIAL: PHP en Google App Engine



NOTA: El tutorial fue creado con instrucciones propias del S.O. Windows. Usuarios de otras plataformas favor de acomodar las instrucciones según lo requieran (Básicamente la cosa sólo cambia en el aspecto de instalación de aplicaciones, las rutas y los comandos en la consola) 

Google App Engine es, por mucho nuestro servicio favorito para la creación y manutención de aplicaciones web. Como se darán cuenta, prácticamente todos los servicios web de Xenode Systems funcionan gracias a Google App Engine, y es que actualmente, no hay nada más sencillo y diverso para permitirle a las personas dejar volar su imaginación en cuanto a código para webapps se refiere...

App Engine comenzó como un entorno que sólamente aceptaba aplicaciones Python y más tarde nos dieron la sorpresa de que también podríamos desarrollar aplicaciones Java. Si bien hasta el momento no han aceptado otros lenguajes de programación, gracias a lo que es Java podemos disfrutar de diferentes integraciones por medio de diferentes proyectos. En esta ocasión hablaremos sobre cómo desarrollar y correr aplicaciones PHP en AppEngine para Java gracias a algo llamado "Caucho Quercus".

Okey, comencemos:

Antes que nada, me gustaría que estén conscientes de que muchas de las aplicaciones "Cool" del Internet (Ejemplo: Facebook) fueron creadas con PHP, lo que demuestra que éste es un lenguaje poderoso. Si te interesa aprenderlo y usar App Engine como un medio para que las personas conozcan tus creaciones, estás en el lugar indicado.

NOTA: Si te pierdes, por favor revisa la Documentación de App Engine, (En este caso la referente al entorno de desarrollo Java) ya que aquí sólo explicaremos lo básico y nos centraremos a hacer funcionar cosas PHP en la Nube de Google.


Bien. Primero necesitamos descargar lo siguiente:

- SDK de App Engine para Java

- Aptana Studio 3 (Beta)

- Notepad++

- JRE y JDK

Antes de proseguir, crea una nueva aplicación web en AppEngine (Necesitarás registrarte con tu número de Celular, prácticamente cualquier compañía conocida está soportada) accede a: http://appengine.google.com/ para hacer esto.

Ya que tenemos todo descargado, extraemos el SDK de GAE para Java en la raíz de nuestro disco duro, y le cambiamos el nombre a la carpeta resultante por gaejava. Una vez hecho esto, instalamos el JRE con un simple "Siguiente>Siguiente>Siguiente" y después el JDK siguiendo Esta Guía (Nota: Tras agregar Java a las variables del sistema hay que reiniciar, de otro modo no funcionará) Finalmente, instalamos Aptana, Notepad++ y tenemos casi todo listo...

Ahora solamente falta "mezclarlo todo" para poder empezar a desarrollar aplicaciones PHP y subirlas a App Engine, lo que haremos a continuación será descargar Este Archivo que extraeremos en cualquier lugar y copiaremos la carpeta myphpapp a nuestro directorio gaejava anteriormente creado, donde le cambiaremos el nombre (a myphpapp) por el de nuestra aplicación, mismo que debe coincidir con el AppID que elegimos en AppEngine para la webapp.

Abrimos la carpeta que acabamos de renombrar y nos dirigimos a "/war/WEB-INF" y ahí abrimos el archivo "appengine-web.xml" con Notepad++, donde editaremos la parte de application en la tercera línea y cambiaremos ese valor por el nombre de nuestra aplicación, (El AppID que elegimos en App Engine) Guardamos y finalmente subimos la aplicación a Google AppEngine a través de nuestra Consola/Símbolo del Sistema/Terminal con:

1. cd C:\gaejava\bin 
2. appcfg.cmd --enable_jar_splitting update C:\gaejava\myphpapp\war

(Donde C: Es la letra asignada al disco duro y myphpapp el nombre del directorio de tu aplicación, que coincide con su AppID en GAE, Un buen truco para no escribir todas las rutas es arrastrar las carpetas que queremos seleccionar como ruta a la terminal, el nombre se escribirá automáticamente)


Con esto, estaremos corriendo una aplicación PHP en Google App Engine, podemos corroborarlo visitando la URL "http://myappid.appspot.com", que tras un minuto o dos después del update, mostrará el archivo "index.php" contenido en el directorio war de myphpapp; Así que entonces, cuando desarrollemos nuestras aplicaciones en PHP debemos guardar todos los sources en el directorio war de la aplicación, tomando a cualquier "index.php" como nuestra "Página Principal"

P.D. Recomendamos la instalación de Aptana Studio 3 porque es un IDE Completísimo para el desarrollo de cualquier tipo de Aplicación Web.