Como instalar nginx, php, mysql y wordpress en Debian 8 (Jessie), (LEMP)

By | 7 agosto, 2017

Vamos a hacer una instalación de un LEMP (Linux, Nginx, MySQL y PHP) en Debian Jessie (8).

Pre requisitos:

Si lo van a hacer local tener Debian 8 (Jessie) instalado en su equipo, si lo van a instalar en un servidor o VPS, tener contratado el VPS o Servidor en la nube, configurar y probar los accesos vía ssh tener Debian 8 (Jessie) instalado en el Servidor o VPS.

vamos a conectarnos por ssh a la maquina remota para poder hacer la instalación, los que lo van a hacer en local no necesitan conectarse a ningún servidor.

en este primer paso explico por separado.

si estas en local te vas a la consola y sigues los pasos a partir del siguiente punto.

si vas a un servidor vas al terminal y nos conectamos vía ssh.

les va a pedir contraseña del usuario en este caso el administrador, cuando teclean la contraseña no se ve nada en la consola.

luego que estamos conectados vía ssh a el Servidor remoto vamos a hacer alguna cosas primero actualizar la versión de debian y después instalar todo lo que necesitamos.

este comando nos actualiza el debian ahora vamos a instalar nginx, php, mysql y correremos un wordpress allí.

instalamos nginx

luego instalamos MySQL

les va a pedir la contraseña de administrador de mysql

asegurar MYSQL

Instalamos php-fpm

ahora vamos a configurar todo para que nginx y php-fpm se puedan ver en nuestro navegador sin problemas, primero configuramos php5-fpm para ello vamos a /etc/php5/fpm/php.ini en este archivo buscamos la linea ;cgi.fix_pathinfo=1 lo descomentamos y lo ponemos igual a cero ;cgi.fix_pathinfo=0

original

como debe quedar

ahora reiniciamos el servicio php5-fpm

vamos a iniciar nginx

y vamos a nuestro browser o navegador web, si están en local y solo en local http://localhost o http://127.0.0.1 allí verán el mensaje de bienvenida de nginx para debian, si es un servidor remoto o VPS o cualquier otro contenedor en la nube http://direcciónIP del servidor y por dirección IP se entiende (dirección del servidor, dominio, subdominio, etc.) allí también deberíamos ver la pagina de bienvenida de nginx para debian.

para saber si tenemos php instalado vamos a crearnos un archivo en el documen root de nginx por ahora para probar que tenemos instalado php esto es en /var/www/html/ allí se encuentra por defecto el archivo index.nginx-debian.html que no es mas que el que trae por defecto nginx, para ejecutar php en nginx debemos hacer y configurar algunas cosas, primero configurar nuestro virtualhost para nginx este se encuentra en /etc/nginx/sites-avaliable/default este archivo contiene lo siguiente

lo debemos editar asignarle nuestro location para ~\.php$ quedando de esta forma

con esta configuración ya deberíamos ver scripts php en nuestro servidor, para ello vamos a crearnos un archivo info.php en nuestro root de nginx que esta en /var/www/html/info.php

a este archivo añadimos lo siguiente

guardamos el archivo y listo reiniciamos nginx y php-fpm

ahora vamos al navegador web y vamos a la dirección: si estas en local http://localhost/info.php o 127.0.0.1/info.php y se debe ver la configuración de nuestro equipo, si estas en la nube debes poner en el browser http://tu_dominio.com/info.php o http://tu_direccion_ip/info.php

ahora vamos a configurar un virtualhost y crear un directorio para nuestro wordpress, a descargarlo e instalarlo, para esto debemos crearnos un directorio para que se entienda lo voy a hacer en /var/www/ pero por costumbre debe hacerse en /home/usuario/public_html/

con esto creamos el directorio wordpress y public_html en /var/www/ ingresamos al directorio wordpress/poublic_html y alli nos descargamos la ultima versión de wordpress

luego nos descargamos wordpress y lo descomprimimos, de la siguiente manera

nos creamos una base de datos para el blog

les pedira el password de el usuario de mysql lo teclean, ingresan a la consola de mysql y allí vamos a crear las base de datos para el blog

con esto creamos la base de datos

con este comando creamos un usuario y le damos una contraseña cambiar los ***** por la contraseña que le quieran asignar al usuario para el blog.

con esto asignamos el usuario creado en MySQL a la base de datos y le damos los privilegios que necesita

limpiamos los privilegios de MySQL

salimos de MySQL

ya tenemos los datos que necesitamos el wordpress la base de datos ahora vamos a modificar el archivo wpconfigsample.php de wordpress

editamos el wp-config.php y le damos los parámetros de base de datos

listo la configuración del wordpress y la Base de datos, ahora vamos con el virtualhost para mostrar nuestro wordpress, esto lo modificamos en sites-avaliables del nginx

primero copiamos el archivo y le ponemos el nombre de nuestro virtualhost en este caso wordpress

luego lo editamos

ok fíjense que cambiamos lo que nos interesaba el root para que apunte a nuestro wordpress, el index.php en la seccion index, en locations agregamos try_files $uri $uri/ /index.php?q=$uri&$args; para las url amigables o los permalink de WordPress con Nginx, descomentamos toda la sección “location ~ \.php$ {“.

debemos crear un enlace simbolico de sites-avaliable a sites-enabled

a mi en la primera vez no me corrio wordpress, lo que hice fue habilitar el modulo mcrypt y despues reinicie los servicios de nginx y php-fpm

listo con esto tendrán su wordpress corriendo en nginx, espero les sirva como a mi.

 

Happy Hacking!