Instalando tu propio sitio Web WordPress con LEMP y Ubuntu 20.04

TOMADO 100% DE: https://www.netntw.com/archivos/572

Hola amigos, hoy veremos como montar nuestra propia Web utilizando WordPress en nuestro servidor Ubuntu 20.04 con Nginx, PHP-FPM, MariaDB (LEMP) previamente preparado. (Puedes ver como instalar un servidor LEMP aquí)

Asumiendo que ya tienes tu servidor LEMP listo, procedemos entonces con la descarga e instalación de WordPress, verás que en pocos pasos y de una manera muy fácil tendrás en pocos minutos tu propia Web.

//El primer paso es descargarnos la última versión de WordPress:

# cd /tmp
# wget -c http://wordpress.org/latest.tar.gz

//Vamos a descomprimir nuestro WordPress descargado:

# tar -xzvf latest.tar.gz

//Teniendo en cuenta nuestra entrada para instalar nuestro servidor Web, vamos a colocar nuestro WordPress en el directorio /var/www/html/ sustituye networld.cu por el nombre que darás al directorio donde estará alojada la web:

# sudo cp -R wordpress/ /var/www/html/networld.cu

//Uno de los inconvenientes que te pueden surgir con diferentes tutoriales en internet es que a la hora del proceso de instalación de WordPress este te de problemas de permisos y te pida acceso FTP, para poder corregir esto y prescindir de un servidor FTP, ejecutamos los siguientes comandos que harán a Nginx propietario del directorio de nuestra Web y le otorgará los permisos recursivos necesarios para una correcta instalación:

# sudo chown -R www-data:www-data /var/www/html/networld.cu
# sudo chmod -R 775 /var/www/html/networld.cu

//Recuerda sustituir networld.cu por el nombre que asignaste al directorio.

El siguiente paso es crear la base de datos y un usuario con privilegios para poder instalar WordPress, podemos hacerlo mediante consola, le dejaré los comandos a continuación, pero teniendo en cuenta nuestro tutorial sobre la instalación de LEMP y phpMyAdmin, pues les mostraré el proceso con este último.

//Crear base de datos mediante consola:

# sudo mysql -u root -p
CREATE DATABASE wordpress;
GRANT ALL PRIVILEGES ON wordpress.* TO 'wordpress'@'localhost' IDENTIFIED BY  'contraseña';
FLUSH PRIVILEGES;
EXIT;

//Lo anterior crear la base de datos wordpress y el usuario wordpress al cual le asigna los privilegios para manejar esta base de datos. El parámetro ‘contraseña’ lo sustituyes por una contraseña segura para el usuario wordpress.

//Crear base de datos mediante phpMyAdmin (este método es solamente si no lo realizaste con el anterior):

//Nos vamos a nuestro phpMyAdmin, según nuestro tutorial mediante http://10.10.20.4/phpmyadmin

//Sustituye 10.10.20.4 por la IP de tu servidor.

//Damos clic arriba en Cuentas de usuarios

//Damos en Agregar cuenta de usuario y rellenamos los campos, Nombre de usuario, en este caso wordpress, Nombre de Host, seleccionamos local, Asignamos una contraseña segura para este usuario y marcamos la casilla Crear base de datos con el mismo nombre y otorgar todos los privilegios. Y damos en Crear.

//Una vez creada la Base de datos, necesitamos crear el Host Virtual en nuestro Nginx:

# sudo nano /etc/nginx/sites-available/networld.cu

//En la Wiki de Nginx, tenemos un ejemplo práctico de Host Virtual para WordPress, puedes verlo en la Web:

https://www.nginx.com/resources/wiki/start/topics/recipes/wordpress/

Asi que ponemos dentro del archivo networld.cu lo siguiente:

# Upstream to abstract backend connection(s) for php
upstream php {
        server unix:/run/php/php7.4-fpm.sock;
        ## server 127.0.0.1:9000;
}
server {
        ## Your website name goes here.
        server_name domain.tld;
        ## Your only path reference.
        root /var/www/html/networld.cu;
        ## This should be in your http block and if it is, it's not needed here.
        index index.php;

        location = /favicon.ico {
                log_not_found off;
                access_log off;
        }

        location = /robots.txt {
                allow all;
                log_not_found off;
                access_log off;
        }

        location / {
                # This is cool because no php is touched for static content.
                # include the "?$args" part so non-default permalinks doesn't break when using query string
                try_files $uri $uri/ /index.php?$args;
        }

        location ~ \.php$ {
                #NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
                include fastcgi_params;
                fastcgi_intercept_errors on;
                fastcgi_pass php;
                #The following parameter can be also included in fastcgi_params file
                fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;
        }

        location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {
                expires max;
                log_not_found off;
        }
}

//Presta especial atención a las siguientes líneas que vienen por defecto en la Wiki de Nginx:

server unix:/tmp/php-cgi.socket;

//Sustituir por:

server unix:/run/php/php7.4-fpm.sock;

//Debemos comentar la línea: server 127.0.0.1:9000;

## server 127.0.0.1:9000;

//NOTA: si cuentas con una entrada DNS configurada, debes modificar la línea server_name.

//Por último ajustar la linea de root de la siguiente forma:

root /var/www/html/networld.cu;

//Recuerda sustituir networld.cu por el nombre del directorio que creaste.

//Creamos el enlace simbólico para activar nuestro Virtual Host:

# sudo ln -s /etc/nginx/sites-available/networld.cu /etc/nginx/sites-enabled/

//Comprobamos que la configuración de Nginx sea correcta y reiniciamos el servicio:

# sudo nginx -t
# sudo systemctl restart nginx

//Todo listo para comenzar con la instalación de WordPress, así que accedemos a nuestro sitio mediante http://10.10.20.4/networld.cu, sustituye 10.10.20.4 por la IP de tu server y networld.cu por el nombre de directorio que le diste al WordPress.

//El primer paso es seleccionar el idioma para WordPress.

//Luego el instalador, nos informará que debemos tener esa serie de datos disponibles para establecerlas cuando nos lo pida.

//Entonces asignamos los datos con los que ya contamos, Nombre de la base de datos: wordpress, Nombre de usuario: wordpress, Contraseña: la que escogimos en los pasos anteriores y Servidor de la base de datos: localhost, como habíamos escogido antes.

//Si el instalador no detecta ningún problema, te notificará que todo esta correcto y que puedes ejecutar la instalación, así que solo da en Ejecutar la instalación.

//Lo siguiente es establecer un título para el sitio Web, crear un nombre de usuario para administrar WordPress y una contraseña para este usuario. También dejamos una dirección de correo de soporte y ya podemos dar en Instalar WordPress.

//Una vez más si todo está correcto, ya podremos Acceder a nuestro sitio o a la administración:

//Login de la administración.

//Dashboard de la administración.

//Nuestra nueva Web.

Acerca de Arrechea

Me gusta eschuchar música, prácticar deportes, viajar (a quien no?), aficionado a la informática (novato en Linux) entre otras...

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

*