DEV Community

Oswaldo Echeverría
Oswaldo Echeverría

Posted on

5 1 1 1 1

Guia rapida servidor Wordpress con Nginx en debian 11

Instalacion nginx

Instalamos nginx

$ apt-get install nginx

Habilitamos nginx

$ systemctl start nginx
$ systemctl enable nginx
$ systemctl status nginx
Enter fullscreen mode Exit fullscreen mode

status nginx

Instalacion PHP y MariaDB Server

$ apt-get install php php-mysql php-fpm php-curl php-gd php-intl php-mbstring php-soap php-xml php-xmlrpc php-zip mariadb-server mariadb-client

Enter fullscreen mode Exit fullscreen mode

Iniciamos mariaDB y verificamos el estado

$ systemclt start mariadb 
$ systemctl enable mariadb
$ systemctl status mariadb 
Enter fullscreen mode Exit fullscreen mode

status de mariadb

Habilitamos el servicio de PHP-FPM

$ systemctl start php7.4-fpm
$ systemctl enable php7.4-fpm
$ systemctl status php7.4-fpm
Enter fullscreen mode Exit fullscreen mode

status php

Si qestamos en produccion y queremos asegurar la instalacion de mariaDB ejecutamos la configuracion guiada deacuerdo a lo que necesitemos

mysql_secure_installation

Creacion de la base de datos

Ejecutamos la BD
$ mysql

Creamos una nueva base de datos
$ CREATE DATABASE wordpress_db;

A continuación, creamos una nueva cuenta de usuario MySQL que utilizaremos para operar en la nueva base de datos de WordPress, con el nombre de usuario "wordpress_user".

$  CREATE USER 'wordpress_user'@'localhost' IDENTIFIED BY 'password';

Enter fullscreen mode Exit fullscreen mode

Vincular el usuario y la base de datos concediendo a nuestro usuario acceso a la base de datos.

$ GRANT ALL PRIVILEGES ON wordpress_db.* to wordpress_user@'localhost';

Enter fullscreen mode Exit fullscreen mode

Vaciar los privilegios para que MySQL conozca los permisos de usuario que acabamos de agregar.

$ FLUSH PRIVILEGES;

Salga del símbolo del sistema de MySQL escribiendo.

$ exit

Descargamos e instalamos WordPress

$ wget -O /tmp/wordpress.tar.gz https://wordpress.org/latest.tar.gz

Enter fullscreen mode Exit fullscreen mode

Descomprima el archivo descargado de WordPress.

$ tar -xzvf /tmp/wordpress.tar.gz -C /var/www/html

Cambie el permiso del directorio del sitio y revierta los cambios después de instalar WordPress.

# chown -R www-data.www-data /var/www/html/wordpress
# chmod -R 755 /var/www/html/wordpress
Enter fullscreen mode Exit fullscreen mode

Creacion de un host virtual Nginx

$ nano /etc/nginx/conf.d/wordpress.conf

Agreguamos el contenido al archivo wordpress.conf.

server {
        listen 80;
        listen [::]:80;
        root /var/www/html/wordpress;
        index index.php index.html index.htm;
        error_log /var/log/nginx/wordpress_error.log;
        access_log /var/log/nginx/wordpres_access.log;
        client_max_body_size 100M;
        location / {
                try_files $uri $uri/ /index.php?$args;
        }
        location ~ \.php$ {
                include snippets/fastcgi-php.conf;
                fastcgi_pass unix:/run/php/php7.4-fpm.sock;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        }
}

Enter fullscreen mode Exit fullscreen mode

Eliminamos el bloque de servidor predeterminado para habilitar su sitio web de WordPress.

$ rm /etc/nginx/sites-enabled/default
$ rm /etc/nginx/sites-available/default
Enter fullscreen mode Exit fullscreen mode

A continuación, pruebamos para asegurarse de que no haya errores de sintaxis en ninguno de sus archivos Nginx.

$ nginx -t

Si no hay ningún problema, reiniciamos Nginx para habilitar sus cambios.

$ systemctl reload nginx

status wordpress

! Felicidades tienes tu servidor wordpress !

Para probarlo y configurarlo.
Entra al navegador a tu ip del servidor o localhost

o lo puedes hacer en el archivo wp-config-sample lo copias y le cambias el nombre a wp-config.php

Postmark Image

Speedy emails, satisfied customers

Are delayed transactional emails costing you user satisfaction? Postmark delivers your emails almost instantly, keeping your customers happy and connected.

Sign up

Top comments (0)

Billboard image

The Next Generation Developer Platform

Coherence is the first Platform-as-a-Service you can control. Unlike "black-box" platforms that are opinionated about the infra you can deploy, Coherence is powered by CNC, the open-source IaC framework, which offers limitless customization.

Learn more

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay