Ubuntu 20.04 WordPress con instalación de Nginx

Ubuntu 20.04 WordPress con instalación de Nginx

WordPress es un sistema de gestión de contenido (CMS) extremadamente popular para sitios web. Su popularidad y ubicuidad realmente no pueden ser exageradas, ya que alimenta un asombroso 35% de los sitios web. Es una manera fácil de obtener un sitio web en línea, y ofrece mucho en cuanto a personalización.

Ubuntu 20.04 Focal Fossa y Nginx son la combinación perfecta para ejecutar su sitio de WordPress. El uso de estas utilidades le dará un sitio web muy poderoso, eficiente y estable. Lo mejor de todo es que todo este software es completamente gratuito y la configuración no es muy difícil. Siga junto con nuestros pasos a continuación para ver cómo hacer que su sitio de WordPress se ejecute en Ubuntu 20.04 con nginx.

Si está más familiarizado o prefiere Apache sobre Nginx, hemos escrito una guía separada para Ubuntu 20.04 Instalación de WordPress en Apache.

En este tutorial aprenderás:

  • Cómo instalar y configurar Nginx
  • Cómo instalar y configurar MariadB para MySQL
  • Cómo configurar una base de datos MySQL para WordPress
  • Cómo descargar e instalar WordPress
  • Cómo configurar SSL para su sitio de WordPress
Ejecutar un sitio web de WordPress en Ubuntu 20.04 con nginx Requisitos de software y convenciones de línea de comandos de Linux
Categoría Requisitos, convenciones o versión de software utilizada
Sistema Instalado Ubuntu 20.04 o actualizado Ubuntu 20.04 fosa focal
Software WordPress, Nginx, PHP, Mariadb (MySQL)
Otro Acceso privilegiado a su sistema Linux como root o a través del sudo dominio.
Convenciones # - requiere que los comandos de Linux dados se ejecuten con privilegios raíz directamente como un usuario raíz o mediante el uso de sudo dominio
ps - Requiere que los comandos de Linux dados se ejecuten como un usuario regular no privilegiado

Instale Nginx, PHP y MySQL

Antes de instalar WordPress, nuestro Ubuntu 20.El sistema 04 necesitará tres componentes principales para ejecutarlo: Nginx, PHP y MySQL. Nginx es para nuestro servidor web, PHP debe mostrar contenido dinámico y MariadB (una bifurcación de código abierto de MySQL) es para nuestra base de datos. Puede instalar estos paquetes abriendo un terminal y escribiendo los siguientes dos comandos:

$ sudo apt actualización $ sudo apt instalación nginx mariadb-server mariadb-client php-fpm php-mysql 

Configurar mysql

MySQL requiere un poco de configuración antes de que podamos comenzar a crear una base de datos. Primero ejecutemos a través de la configuración de seguridad inicial. Escriba el siguiente comando en la terminal:

$ sudo mysql_secure_installation 

Se le pedirá que establezca una contraseña de root para MySQL, y luego algunas preguntas de seguridad. Puedes contestar Y (sí) a todas las preguntas, y luego la configuración se completará.

Pasando la configuración de seguridad MySQL

Cubrimos más configuración de MySQL en nuestra instalación MySQL en Ubuntu 20.04 Artículo, aunque la configuración anterior es realmente todo lo que necesitará hacer.



Crear una base de datos para WordPress

Su sitio de WordPress necesitará una base de datos para almacenar toda la información del usuario, contenido de publicación, etc. Siga estos pasos para preparar su base de datos y el usuario de MySQL:

  1. Inicie MySQL como el usuario root:
    $ sudo mysql 
  2. Cree una nueva base de datos para WordPress:
    Mariadb [(ninguno)]> Crear base de datos WordPress_DB; 
  3. A continuación, cree un nuevo usuario de base de datos para WordPress. El mi contraseña El texto a continuación debe reemplazarse con la contraseña deseada (segura):
    Mariadb [(ninguno)]> Crear usuario 'WordPress_user'@'localhost' identificado por 'my_password'; 
  4. Ahora, necesitamos dar a nuestro usuario de WordPress permisos completos en la base de datos de WordPress:
    Mariadb [(ninguno)]> otorgue todos los privilegios en wordpress_db.* a wordpress_user@'localhost'; 
  5. Finalmente, guarde los cambios que hemos realizado con los permisos de usuario y salga de la base de datos:
    Mariadb [(ninguno)]> privilegios de descarga; Mariadb [(ninguno)]> Salir 
    Creación de la nueva base de datos y usuario para WordPress en MySQL

Configurar nginx

Antes de que podamos descargar WordPress, necesitaremos configurar correctamente Nginx para alojar nuestro sitio web. Vamos a llamar a nuestro sitio web "WordPress" en toda la configuración de Nginx, pero puede elegir otro nombre si lo desea.

Primero, cree un archivo de configuración en el /etc/nginx/sitios disponible Directorio con Nano o su editor de texto favorito:

$ sudo nano/etc/nginx/sites disponible/WordPress 

Puede pegar el siguiente contenido en su archivo recién creado, que es una configuración NGINX bastante estándar.

servidor escuchar 80; escuchar [::]: 80; root/var/www/wordpress; índice índice.php; server_name 127.0.0.1; ubicación / try_files $ uri $ uri / = 404;  ubicación ~ \ \.PHP $ incluye fragmentos/fastcgi-php.conf; fastcgi_pass unix:/var/run/php/php7.4-FPM.calcetín;  
Copiar

Hay algunas líneas aquí que es posible que necesite cambiar. La línea 9 debe contener su nombre de dominio en lugar de 127.0.0.1, A menos que no tenga un nombre de dominio. La línea 17 debe actualizarse con el número de versión de su PHP instalado. Para verificar su versión de PHP, ejecute el PHP -Versión comando en la terminal.

Archivo de configuración de Nginx para nuestro sitio de WordPress

Una vez que se realizan sus ediciones de configuración, puede guardar sus cambios en este archivo y cerrarlo. Los últimos pasos en la configuración de NGINX son eliminar el sitio predeterminado, habilitar su sitio web y reiniciar NGINX para que los cambios entren en vigencia:

$ sudo rm/etc/nginx/sites-habilitado/predeterminado $ sudo ln -s/etc/nginx/sites-disponible/wordpress/etc/nginx/sites-habilitado/wordpress $ sudo systemctl reiniciar nginx 

Descargar e instalar WordPress

Ahora que todos los requisitos previos han sido satisfechos, finalmente podemos pasar a la instalación de WordPress.

  1. Primero, descargue la última versión de WordPress usando wget:
    $ wget -o /tmp /wordpress.alquitrán.gz https: // wordpress.org/último.alquitrán.GZ 


  2. Descomprima el archivo de WordPress descargado en el directorio del sitio:
    $ sudo tar -xzvf /tmp /wordpress.alquitrán.GZ -C /VAR /WWW 
  3. Cambiar la propiedad del directorio del sitio:
    $ sudo chown -r www -data.www-data/var/www/wordpress 
  4. Abra su navegador de Internet y navegue a 127.0.0.1 o su nombre de dominio totalmente calificado. Serás recibido por el asistente de configuración de WordPress. Haga clic en el botón "Let's Go" para comenzar con la configuración. Página de configuración de WordPress
  5. La siguiente pantalla nos pide información sobre la configuración de nuestra base de datos. Ingrese los valores que establece anteriormente y luego haga clic en "Enviar."Los últimos dos cuadros (host de base de datos y prefijo de tabla) se pueden dejar en sus valores predeterminados. Ingrese la información de la base de datos MySQL para WordPress
  6. WordPress debe confirmar que puede comunicarse con la base de datos MySQL. Haga clic en "Ejecutar la instalación" para comenzar a instalar WordPress. WordPress confirma que puede conectarse a la base de datos MySQL
  7. Ahora deberá completar información general sobre su nuevo sitio web: su nombre, nombre de usuario de administrador, contraseña, etc. Complete esto y luego haga clic en "Instalar WordPress" en la parte inferior. Ingrese información sobre su nuevo sitio de WordPress
  8. La instalación debe estar completa y puede iniciar sesión en su nuevo sitio web para comenzar a crear contenido! La instalación de WordPress se ha completado con éxito

Siempre puede acceder al panel de administración de WordPress navegando a http: // 127.0.0.1/wp-admin (o reemplazar 127.0.0.1 con su nombre de dominio totalmente calificado).

Panel de administración de WordPress

Los cambios que realice en el panel de administración se reflejarán en el sitio web:

Nuestro nuevo sitio web de WordPress está operativo

Configuración SSL opcional

Antes de concluir, también le mostraremos cómo habilitar SSL en su nuevo sitio de WordPress. Esto es puramente opcional, ya que su sitio funcionará perfectamente bien sin él, pero ofrece seguridad adicional y brinda a los usuarios una sensación cálida y confusa al ver el candado al lado de su nombre de dominio en la barra de URL de su navegador.

  1. Comience por generar un nuevo certificado autofirmado con el siguiente comando y respondiendo las pocas preguntas que le solicite. Para el "nombre común", ingrese la dirección IP de su sitio web o el nombre de dominio totalmente calificado:
    $ sudo openssl req -x509 -nodes -days 365 -newkey RSA: 2048 -keyout/etc/ssl/private/nginx -selfeded.Key -Out/Etc/SSL/Certs/Nginx -Selfsigned.CRT 
    Complete la información del certificado SSL
  2. A continuación, cree un nuevo archivo de configuración SSL en la siguiente ubicación:
    $ sudo nano/etc/nginx/fragmentos/autofirmado.confusión 
  3. En este archivo, ingrese las siguientes dos líneas, antes de guardar cambios y salir del archivo:
    ssl_certificate/etc/ssl/certs/nginx-selfed.CRT; ssl_certificate_key/etc/ssl/private/nginx-selfed.llave; 
    SSL autofirmado.Configuración del fragmento de confirmación
  4. Luego, necesitamos crear otro fragmento de configuración: $ sudo nano/etc/nginx/fragmentos/ssl-params.confusión


  5. Ingrese el siguiente contenido en este archivo, luego guárdelo y salga. Tenga en cuenta que, dado que estamos utilizando un certificado autofirmado, la línea 9 y la línea 10, que se relacionan con el grapado SSL, se ha comentado. Si no está utilizando un certificado autofirmado, desenchufe esas dos líneas.
    ssl_protocols tlsv1.2; ssl_prefer_server_ciphers on; ssl_dhparam/etc/ssl/certs/dhparam.pem; SSL_CIPHERS ECDHE-RSA-AES256-GCM-SHA512: DHE-RSA-AES256-GCM-SHA512: ECDHE-RSA-AES256-GCM-SHA384: DHE-RSA-AES256-> SSL_ECDH_CURVE Secp34r1; ssl_session_timeout 10m; ssl_session_cache compartido: ssl: 10m; ssl_session_tickets apagado; # ssl_stapling on; # ssl_stapling_verify on; Resolvente 8.8.8.8 8.8.4.4 válido = 300s; resolver_timeout 5s; add_header x-frame-options negar; add_header x-content-type-options nosniff; add_header X-XSS-Protection "1; mode = block";
    Copiar SSL SSL-Params.Configuración del fragmento de confirmación
  6. A continuación, ejecute el siguiente comando para generar el dhparam.pem archivo:
    $ sudo openssl dhparam -out/etc/ssl/certs/dhparam.PEM 2048 
    Generando dhparam.archivo PEM
  7. Ahora que la configuración SSL está completa, necesitamos configurar NGINX para usar SSL. Abra el archivo de configuración NGINX que creamos para nuestro sitio de WordPress antes:
    $ sudo nano/etc/nginx/sites disponible/WordPress 
  8. Dentro de servidor Bloque, necesitamos agregar las siguientes cuatro líneas:
     Escuche 443 SSL; escuchar [::]: 443 ssl; incluir fragmentos/autofirmados.conf; incluir fragmentos/params ssl.conf; 
    Estas cuatro líneas son necesarias para habilitar SSL en nuestro sitio de WordPress
  9. Guarde sus cambios en ese archivo antes de cerrarlo y luego reinicie Nginx:
    $ sudo systemctl reiniciar nginx 

Su sitio de WordPress ahora será capaz de usar el cifrado SSL:

El sitio web de WordPress ahora está utilizando el cifrado SSL (HTTPS)

Conclusión

WordPress es utilizado por millones, desde compañías Fortune 500 hasta bloggers de tiempo pequeño. Utiliza componentes de la parte superior de la línea y funciona maravillosamente en Ubuntu 20.04 fosa focal: un combo que es realmente difícil de superar.

En este artículo, vimos cómo instalar y configurar Nginx, PHP y MySQL para ejecutar un sitio web de WordPress. Aunque la configuración lleva un poco de tiempo, vale la pena. Nginx es más rápido que otros servidores web, y WordPress le brinda un sitio web elegante de inmediato.

Tutoriales de Linux relacionados:

  • Cosas para instalar en Ubuntu 20.04
  • Cosas que hacer después de instalar Ubuntu 20.04 fossa focal Linux
  • Ubuntu 20.04 trucos y cosas que quizás no sepas
  • Ubuntu 20.04 WordPress con instalación de Apache
  • Una introducción a la automatización, herramientas y técnicas de Linux
  • Ubuntu 20.04 Guía
  • Instalación de WordPress OpenLitespeed
  • Mastering Bash Script Loops
  • Ubuntu 20.04 Hadoop
  • Cómo migrar apache a nginx convirtiendo virtualhosts en ..