Subir tu sitio WordPress a Google App Engine (GAE)

11 de Sep, 2015

Para subir tu sitio a la Nube de Google, debes primero bajarte el PHP SKD para google engine y un servidor MySQL para correr tu sitio localmente

Bajar los programas necesarios.

  1. Instala el PHP SDK for Google App Engine
  2. Instala MySQL server (opcional si no se quiere correr localmente)

Crear la base de Datos

Luego que instales los programas necesarios, debes inscribirte en la nube de Google haciendo click aquí, y crear una instancia SQL, para ello debes ir al menu lateral y bajar hasta «Almacenamiento» luego en el sub-menu «Cloud-SQL» y Luego hacer click en el botón de «Crear Instancia». Si es la primera vez que entras te pedirá los datos de facturación para tu cuenta en Google, debes tener una TDC para poder acceder.

Una vez creada la instancia puedes entrar en ella y en el menu superior hacer click en «Base de Datos» y luego en el botón de «Nueva Base de Datos»; coloca el nombre y «Añadir».

Crear nuestra APP

Ya tenemos nuestra base de datos, procedemos a crear nuestra APP, veremos arriba en el header un botón «Crear Proyecto»; al hacer click en el colocaremos el nombre de nuestro proyecto por ejemplo «nuestrosite», recuerda que este nombre generará la URL para nuestro sitio el cual será nuestrosite.appspot.com el cual genera Google automáticamente.

Importante: Al crear nuestro proyecto tenemos en las opciones avanzadas la posibilidad de escoger la región donde se desplegará nuestro sitio (USA, Europa, Asia); es importante que la región coincida con la región que hemos colocado en nuestra Base de Datos, de lo contrarío no podremos obtener acceso a ella.

Debemos autorizar a nuestra aplicación para acceder a la base de datos. Para ello nos vamos en el menu principal a «Almacenamiento» luego «Cloud SQL», nos abrirá todas las instancias que tenemos abiertas, seleccionamos la que nos interesa haciendo click en el ID, y luego nos vamos a la pestaña de «Control de Accesos», nos aparecerá un apartado con «Redes Permitidas» y «Aplicaciones de App Engine autorizadas» nos vamos a la ultima y en el campo colocamos el ID de nuestro proyecto y hacemos click en guardar. Ya con esto tenemos autorizada nuestra aplicación a usar la base de datos.

Si queremos crear un usuario de acceso con contraseña a la base de datos, nos vamos a la sub-pestaña de usuarios y agregamos uno.

Corremos WordPress Localmente

Este es un paso opcional, pero lo puedes hacer sin problemas, si solo quieres tener la opción de subir a GAE, ignora la creación de la base de datos local y todo lo que tenga que ver con ello y con correr el sitio localmente.

Para correr WordPress localmente debemos crearnos una base de datos para ello usamos el siguiente código

{PATH_TO_MYSQL_BIN}/mysql -u root -p
create database wordpress_db;
exit;

Ya tenemos nuestra base de datos, ahora procedemos a abrir nuestro programa de PHP SKD para GAE y agregamos un nuevo sitio con el ID que hemos agregado a nuestro proyecto. (Para ver el ID desde la consola en el menu «Pagina Principal» nos abrirá todos los datos del proyecto, la primera ficha tiene el ID y el numero de proyecto.). Podemos escoger donde queremos tener el sitio en nuestros directorio de archivos para luego poder correrlo localmente.

Bajamos de este este repositorio todos los archivos que necesitamos para crear nuestro sitio de WordPress.

Dentro de la carpeta creada, tendremos un archivo llamado app.yaml el cual posee toda la configuración que daremos a nuestro sitio.

Creamos una carpeta llamada wordpress y dentro de ella colocamos todo el contenido de nuestro wordpress a instalar. Debemos configurar el wp-config.php para que cumpla con las contraseñas y nombres de las bases de datos tanto en GAE como en local.

Para correr nuestra web local lo podemos hacer desde el botón de «Run» del SKD en Mac y Windows o a través de los siguientes comandos desde el directorio donde tenemos app.yaml.

$ dev_appserver.py path_to_this_directory

Para Linux debemos agregar comandos adicionales.

$ dev_appserver.py --php_executable_path=~/php-5.4.25/installdir/bin/php-cgi path_to_this_directory

Ya con toda esta configuración realizada, podremos ver nuestro site desde cualquier navegador con http://localhost:8080/wp-admin/install.php; y podemos proceder a instalar nuestro WordPress. También lo puedes ver desde el botón de Browse de la aplicación SKD.

Procedemos a Subir nuestro site a GAE

Una ves nuestro sitio este corriendo en local, podemos subir a GAE, para ello solo debemos hacer click en el botón de «Deploy» subida desde nuestra aplicación GAE o a través del siguiente comando desde el directorio.

appcfg.py update APPLICATION_DIRECTORY

Ahora como hemos hecho con nuestro local corremos el siguiente enlace para instalar nuestro WordPress en GAE http://<ID_de_proyecto>.appspot.com/wp-admin/install.php

Casi Listos

Debemos crear una instancia de almacenamiento de archivos en el Cloud, para ello nos vamos a http://appengine.google.com; luego seleccionas tu proyecto y en el menú de la izquierda bajas hasta «Application Settings» (Preferencias de Aplicación) y das click, al abrir, bajas hasta «Cloud Integration» (Integración con la Nube) y le das click al botón de crear.

Si nos vamos a nuestra Consola de Google, en nuestro proyecto y bajamos a «Almacenamiento», luego en «Cloud Storage» hacemos click en «Navegador»; podremos observar que nos ha creado una instancia con el ID de nuestro sitio.

Ya solo nos queda entrar en nuestro sitio y activar los siguientes plugins, Google App Engine for WordPress y Batcache Manager; cuando estén activos nos vamos a la configuración del plugin (settings) y una vez dentro debemos asegurarnos que el almacenamiento por defecto llama a nuestro ID «default bucket» sea igual a (<ID_de_proyecto>.appspot.com); y si estamos usando https debemos confirmar para usar SSL para la transferencia de archivos.

Listo! Ya tenemos nuestro sitio funcionando en GAE.

Queremos que nuestro sitio sea Multisite, continúa leyendo en este post.