DEV Community

Gustavo Ramirez
Gustavo Ramirez

Posted on • Edited on

Wordpress en AWS - La mejor combinación

Para muchos la palabra AWS piensan que es costoso y dificil de configurar un sitio web basico o piensan que eso es solo para empresas grandes o ñoños de la tecnologia. Hoy en Frontend sin Fronteras junto con AWS Frontend LATAM vamos a enseñarte como con un presupuesto menor a USD 10 puedes tener un sitio web en este caso con el CMS de mas uso en la internet con temas de seguridad de AWS.

Bueno primero que todo dentro de la nube de AWS existe una capa que se llama *Lightsail* que te permite crear no solo sitios web si no aplicaciones de bajo costo y preconfigurados.

Entonces con esta introducción entramos en materia.

Buscamos dentro de la consola en el buscador la opción de Ligthsail y damos click:

Image description

Dentro de Ligthsail nos sale la vista y le damos crear instancia:

Image description

inmediatamente despues seleccionamos la region:

Image description

seguimos con la plataforma y el plan:

Image description

Seleccionamos la capacidad lo bueno de ligthsale te da 3 meses para probar antes de cobrar.

Image description

Con lo anterior le pones el nombre de la instancia, puedes agregar una clave SSH predeterminada o crear una especifica y por ultimo le damos crear instancia.

Image description

Despues de eso Ligthsale comienza a crear la instancia

Image description

Despues de esto crearemos la IP fija que conecta esta instancia. al ser un sitio web básico se configurara un ip estatica y una distribucion CDN, ya si vemos que va consumir mas se crea un balanceador de cargar pero esto sera en otro articulo.

Cuando la estancia ya este en ejecucion y en esta forma damos click en redes:

Image description

le damos crear una ip estatica:

Image description

seleccionamos la instancia que queremos conectar a la ip y el nombre:

Image description

Luego de eso vamos inicio y despues a redes nuevamente pero le damos crear distribucion:

Image description

Elegimos el origen que es la instancia de wordpress

Image description

inmediatamente despues nos muestra la ip que tenemos seleccionada

Image description

despues definimos el comportamiento del cache en este caso optimizado para wordpress

Image description

seleccionamos 50GB le damos un nombre a la estancia y damos crear distribucion

Image description

Despues de esto nos dice que hay que hacer ajustes y si.

Image description

Despues de esto vamos a hacer los 2 unicos 2 paso que debemos meterle código en la consola de comandos.

para eso vamos a darle abrir la estancia dando clic en la que escogimos

Image description

despues en damos click en conectarse a traves de SSH

Image description

esperamos que se conecte la instancia y nos debe dar una vista asi

Image description

despues de esto ponemos este comando en la consola (es el ultimo de la version mas reciente de la imagen).

sudo vi /bitnami/wordpress/wp-config.php
Enter fullscreen mode Exit fullscreen mode

Presionamos la tecla I que es el modo de insertar de vim y elimina las siguientes lineas de código:

define('WP_SITEURL', 'http://' . $_SERVER['HTTP_HOST'] . '/');
define('WP_HOME', 'http://' . $_SERVER['HTTP_HOST'] . '/');
Enter fullscreen mode Exit fullscreen mode

y la reemplazamos por estas

define('WP_SITEURL', 'https://' . $_SERVER['HTTP_HOST'] . '/');
define('WP_HOME', 'https://' . $_SERVER['HTTP_HOST'] . '/');
if (isset($_SERVER['HTTP_CLOUDFRONT_FORWARDED_PROTO'])
&& $_SERVER['HTTP_CLOUDFRONT_FORWARDED_PROTO'] === 'https') {
$_SERVER['HTTPS'] = 'on';
}
Enter fullscreen mode Exit fullscreen mode

Luego precionamos la letra ESC y escribimos :wq! y presionamos enter.

Para temas de SEO ya los dominios van si el www entonces configuramos del www al non-www

escribimos el siguiente comando en la consola:

sudo vi /opt/bitnami/apache2/conf/vhosts/wordpress-vhost.conf
Enter fullscreen mode Exit fullscreen mode

Buscamos la linea que dice # END WordPress y copiamos arriba las siguiente lineas de codigo: (el mismo paso a paso de vim del cambio anterior)

RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ https://%1/$1 [R=301,L]
Enter fullscreen mode Exit fullscreen mode

Y reiniciamos el servicio de apache.

Top comments (0)