GNU/Linux >> Tutoriales Linux >  >> Debian

Cómo instalar WordPress con LEMP Stack en Debian 11 Bullseye

WordPress es el sistema de gestión de contenido más dominante escrito en PHP, combinado con la base de datos MySQL o MariaDB. Puede crear y mantener un sitio sin conocimientos previos en desarrollo web o codificación. La primera versión de WordPress fue creada en 2003 por Matt Mullenweg y Mike Little y ahora es utilizada por el 70% del mercado web conocido, según W3Tech. WordPress viene en dos versiones:el código abierto gratuito WordPress.org y WordPress.com, un servicio pago que comienza en $5 por mes hasta $59. El uso de este sistema de administración de contenido es fácil y, a menudo, se considera un trampolín para crear un blog o un sitio destacado similar.

En el siguiente tutorial, aprenderá cómo instalar WordPress autohospedado utilizando las últimas versiones disponibles de Nginx, MariaDB y PHP.

Requisitos

  • SO recomendado: Diana de Debian 11
  • Cuenta de usuario: Una cuenta de usuario con sudo o acceso root.
  • Paquetes requeridos: enumerados a lo largo del tutorial

Actualizar Sistema Operativo

Actualice su Debian sistema operativo para asegurarse de que todos los paquetes existentes estén actualizados:

sudo apt update && sudo apt upgrade -y

El tutorial usará el comando sudo y asumiendo que tiene estado sudo .

Para verificar el estado de sudo en su cuenta:

sudo whoami

Ejemplo de salida que muestra el estado de sudo:

[joshua@debian~]$ sudo whoami
root

Para configurar una cuenta Sudo existente o nueva, visite nuestro tutorial sobre Agregar un usuario a Sudoers en Debian .

Para usar la cuenta raíz , use el siguiente comando con la contraseña de root para iniciar sesión.

su

Instalar el paquete CURL &UNZIP

El tutorial utiliza el comando curl and unzip durante ciertas partes. Para asegurarse de que esté instalado, ejecute el siguiente comando en su terminal:

sudo apt install curl unzip -y

Instalar Nginx más reciente:(pila LEMP)

Para iniciar la instalación de la pila LEMP, deberá instalar Nginx Servidor web. Un método es instalar la última línea principal de Nginx o estable desde el repositorio de Ondřej Surý para tener el software más actualizado. Muchos usuarios de Ubuntu conocerían su PPA y usted puede hacer lo mismo en Debian.

Para usar la última versión de la línea principal o estable de Nginx, primero deberá importar el repositorio.

Para importar el repositorio principal:

curl -sSL https://packages.sury.org/nginx-mainline/README.txt | sudo bash -x

Para importar un repositorio estable:

curl -sSL https://packages.sury.org/nginx/README.txt | sudo bash -x

Actualiza tu repositorio para reflejar el nuevo cambio:

sudo apt upgrade

Ahora que ha instalado el repositorio de Nginx y actualizó la lista de repositorios, instale Nginx con lo siguiente:

sudo apt install nginx-core nginx-common nginx nginx-full

Ejemplo de salida:

Tipo Y , luego presione la TECLA ENTER para continuar y completar la instalación.

Ahora verifique que se instaló el último Nginx del repositorio de Ondřej Surý usando el comando de política apt-cache . Tenga en cuenta el ejemplo del tutorial línea principal Nginx instalada:

apt-cache policy nginx

Ejemplo de salida para Nginx Mainline :

Tenga en cuenta que es posible que se le pida que mantenga o reemplace su /etc/nginx/ existente nginx.conf archivo de configuración durante la instalación. Se recomienda mantener su archivo de configuración actual presionando (n) .

Al instalar Nginx con el repositorio personalizado, viene con módulos adicionales compilados, uno de los módulos más buscados y recomendados para habilitar es el módulo Brotli.

Para instalar brotli , abra su nginx.conf archivo de configuración:

nano /etc/nginx/nginx.conf

Ahora agregue las líneas adicionales antes en el HTTP{} sección:

brotli on;
brotli_comp_level 6;
brotli_static on;
brotli_types application/atom+xml application/javascript application/json application/rss+xml
   application/vnd.ms-fontobject application/x-font-opentype application/x-font-truetype
   application/x-font-ttf application/x-javascript application/xhtml+xml application/xml
   font/eot font/opentype font/otf font/truetype image/svg+xml image/vnd.microsoft.icon
   image/x-icon image/x-win-bitmap text/css text/javascript text/plain text/xml;

El brotli_comp_level se puede establecer entre 1 (más bajo) y 11 (más alto) . Por lo general, la mayoría de los servidores se ubican en el medio, pero si su servidor es un monstruo, configúrelo en 11 y controle los niveles de uso de la CPU.

A continuación, pruebe para asegurarse de que los cambios funcionan correctamente antes de publicarlo:

sudo nginx -t

Si los cambios funcionan correctamente, debería ver lo siguiente:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Ahora haga los cambios en vivo reiniciando su servidor:

sudo systemctl restart nginx

A continuación, habilite Nginx en el arranque del sistema:

sudo systemctl enable nginx

Por último, verifique que Nginx se esté ejecutando correctamente; esto debería estar bien para omitir si ejecutó el comando nginx -t y no obtuve errores.

systemctl status nginx

Ejemplo de salida:

Instalar MariaDB más reciente (LEMP STACK)

El tutorial recomendará instalar MariaDB constantemente sobre MySQL debido al rendimiento más que a cualquier otra cosa.

Primero, importe el repositorio oficial de MariaDB, 10.6 es la versión estable actual, pero 10.7 es la nueva versión pero quizás no tan estable.

Opción 1:importar MariaDB 10.6:

curl -LsS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash -s -- --mariadb-server-version=10.7 --skip-maxscale --skip-tools

Opción 2:importar MariaDB 10.7:

curl -LsS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash -s -- --mariadb-server-version=10.7 --skip-maxscale --skip-tools

Una vez que haya elegido una versión, actualice su repositorio APT.

sudo apt upgrade

Instalar MariaDB en el escritorio o servidor Debian

Para instalar MariaDB, deberá instalar los paquetes de cliente y servidor. Esto se puede hacer de la siguiente manera:

sudo apt install mariadb-server mariadb-client

Ejemplo de salida:

Tipo Y , luego presione la TECLA ENTER para continuar y completar la instalación.

Confirme la instalación de MariaDB comprobando la versión y compilación:

mariadb --version

Ejemplo de salida:

mariadb  Ver 15.1 Distrib 10.6.4-MariaDB, for debian-linux-gnu (x86_64) using readline EditLine wrapper

A continuación, inicie su servicio MariaDB ejecutando el siguiente comando para iniciar y habilitar en el arranque:

sudo systemctl start mariadb && sudo systemctl enable mariadb

Ejemplo de salida si tiene éxito:

Synchronizing state of mariadb.service with SysV service script with /lib/systemd/systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install enable mariadb

Comprobar el estado del servidor MariaDB

Ahora ha instalado MariaDB y puede verificar el estado del software de la base de datos utilizando el siguiente comando systemctl:

systemctl status mariadb

De forma predeterminada, encontrará que el estado de MariaDB está desactivado. Para iniciar MariaDB, use el siguiente comando:

sudo systemctl start mariadb

Ahora vuelva a verificar el estado y debería obtener lo siguiente:

Para detener MariaDB:

sudo systemctl stop mariadb

Para habilitar MariaDB al iniciar el sistema:

sudo systemctl enable mariadb

Para deshabilitar MariaDB al iniciar el sistema:

sudo systemctl disable mariadb

Para reiniciar el servicio MariaDB:

sudo systemctl restart mariadb

Asegurar MariaDB con script de seguridad

A continuación, se le pedirá que ingrese su (contraseña raíz de MariaDB) . Por ahora, presiona (ENTER) clave ya que la contraseña de root aún no está configurada como se muestra a continuación:

sudo mysql_secure_installation

A continuación, escriba (Y) y presione enter para configurar el (raíz) contraseña de la siguiente manera:

La próxima serie de preguntas que puede presionar con seguridad (ENTER) , que responderá (Y) a todas las preguntas posteriores que le piden que (elimine usuarios anónimos, deshabilite el inicio de sesión raíz remoto y elimine la base de datos de prueba) . Tenga en cuenta el (Y) está en mayúscula, lo que significa que es la respuesta predeterminada cuando presiona (ENTER) clave.

Ejemplo a continuación:

[joshua@debian-11 ~]$ sudo mariadb-secure-installation

NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!

In order to log into MariaDB to secure it, we'll need the current
password for the root user. If you've just installed MariaDB, and
haven't set the root password yet, you should just press enter here.

Enter current password for root (enter for none): 
OK, successfully used password, moving on...

Setting the root password or using the unix_socket ensures that nobody
can log into the MariaDB root user without the proper authorisation.

You already have your root account protected, so you can safely answer 'n'.

Switch to unix_socket authentication [Y/n] Y <---- Type Y then press the ENTER KEY.
Enabled successfully!
Reloading privilege tables..
 ... Success!


You already have your root account protected, so you can safely answer 'n'.

Change the root password? [Y/n] Y <---- Type Y then press the ENTER KEY.
New password: 
Re-enter new password: 
Password updated successfully!
Reloading privilege tables..
 ... Success!


By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them.  This is intended only for testing, and to make the installation
go a bit smoother.  You should remove them before moving into a
production environment.

Remove anonymous users? [Y/n] Y <---- Type Y then press the ENTER KEY.
 ... Success!

Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] Y <---- Type Y then press the ENTER KEY.
 ... Success!

By default, MariaDB comes with a database named 'test' that anyone can
access.  This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n] Y <---- Type Y then press the ENTER KEY.
 - Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!

Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n] Y <---- Type Y then press the ENTER KEY.
 ... Success!

Cleaning up...

All done!  If you've completed all of the above steps, your MariaDB
installation should now be secure.

Thanks for using MariaDB!

Descripción general de lo que debería haberse hecho anteriormente:

  • Configuración de la contraseña para root cuentas.
  • Eliminar las cuentas raíz a las que se puede acceder desde fuera del host local.
  • Eliminar cuentas de usuarios anónimos.
  • Eliminar la base de datos de prueba, a la que pueden acceder de forma predeterminada los usuarios anónimos.

Este paso es esencial para la seguridad de la base de datos MariaDB y no debe modificarse ni omitirse a menos que sepa lo que está haciendo.

Instalar PHP más reciente (LEMP STACK)

La última parte del tutorial será instalar PHP, que es el backend que se comunica entre Apache y MariaDB, el intermediario. PHP 8.0 se está volviendo relativamente estable y las versiones más recientes de PHP 8.1 ya están disponibles.

El tutorial se centrará en importar la última versión de PHP de Ondřej Surý, el mantenedor de Debian PHP. Esto siempre está actualizado, incluso cuando se lanzan nuevas versiones de PHP.

Importar Repositorio PHP de Ondřej Surý

El primer paso es importar e instalar el GPG y el repositorio.

En su terminal, use el siguiente comando.

curl -sSL https://packages.sury.org/php/README.txt | sudo bash -x

Este comando instalará el repositorio PHP y actualizará su repositorio APT.

A continuación, actualice la lista de repositorios, ya que el nuevo repositorio requerirá que se actualicen algunos paquetes existentes y se recomienda hacerlo antes de instalar cualquier versión de PHP.

sudo apt upgrade

Opción 1. Instalar PHP 7.4

Ahora puede proceder a instalar PHP 7.4 para su necesidad particular de la siguiente manera:

sudo apt install php7.4-fpm php7.4-cli php7.4-common php7.4-mbstring php7.4-xmlrpc php7.4-soap php7.4-gd php7.4-xml php7.4-intl php7.4-mysql php7.4-cli php7.4-ldap php7.4-zip php7.4-mcrypt php7.4-curl php7.4-json php7.4-opcache php7.4-readline php7.4-xml php7.4-gd -y

Verifique la instalación y verifique la versión y compilación:

php -v

Ejemplo de salida:

A continuación, inicie y habilite PHP 7.4-FPM para que se inicie automáticamente en el arranque.

sudo systemctl start php7.4-fpm && sudo systemctl enable php7.4-fpm

Ahora, por defecto, PHP-FPM debería estar ejecutándose. Para confirmar esto, use el siguiente comando systemctl:

sudo systemctl status php7.4fpm

Ejemplo de salida:

Opción 2. Instalar PHP 8.0

Ahora puede proceder a instalar PHP 8.0 para su necesidad particular de la siguiente manera:

sudo apt install php8.0-fpm php8.0-cli php8.0-common php8.0-mbstring php8.0-xmlrpc php8.0-soap php8.0-gd php8.0-xml php8.0-intl php8.0-mysql php8.0-cli php8.0-ldap php8.0-zip php8.0-mcrypt php8.0-curl php8.0-opcache php8.0-readline php8.0-xml php8.0-gd unzip -y

Verifique la instalación y verifique la versión y compilación:

php -v

Ejemplo de salida:

Ahora, por defecto, PHP-FPM debería estar ejecutándose. Para confirmar esto, use el siguiente comando systemctl:

sudo systemctl status php8.0-fpm

Ejemplo de salida:

Instalar el servidor de WordPress

Descargar WordPress

Visite la página de descarga de WordPress.org y desplácese hacia abajo para encontrar el latest.zip “ enlace de descarga. Luego, usando el comando wget, descarga el archivo.

wget https://wordpress.org/latest.zip

Crear estructura de carpetas para WordPress

Ahora que tiene el archivo descargado, proceda a descomprimirlo y muévalo a su directorio www.

Crear el directorio para WordPress:

sudo mkdir -p /var/www/html/wordpress

Descomprima WordPress en el directorio www:

sudo unzip latest.zip -d /var/www/html/

Debe establecer los permisos de propietario del directorio en WWW, de lo contrario, tendrá problemas con los permisos de escritura de WordPress.

Establecer permiso de chown (importante):

sudo chown -R www-data:www-data /var/www/html/wordpress/

Establecer permiso chmod (importante):

sudo find /var/www/html/wordpress -type d -exec chmod 755 {} \;
sudo find /var/www/html/wordpress -type f -exec chmod 644 {} \;

Crear base de datos para WordPress

WordPress requiere una base de datos para ejecutarse, por lo que tuvo que instalar MariaDB. Antes de continuar, debe crear una base de datos para WordPress usando MariaDB. Primero, abre la consola de la terminal y escribe lo siguiente.

Abre el shell de MariaDB como root:

sudo mariadb -u root

Segundo comando alternativo:

sudo mysql -u root

A continuación, cree la base de datos. Este puede ser cualquier nombre que desee. Para la guía, lo llamará “WORDPRESSDB.”

Crear base de datos de WordPress:

CREATE DATABASE WORDPRESSDB;

Una vez creada la base de datos, debe crear un nuevo usuario para el nuevo sitio de WordPress.

Esto se hace como medida de seguridad, por lo que cada base de datos tiene un usuario diferente. Si un nombre de usuario se ve comprometido, el atacante no accede a todas las bases de datos del otro sitio web.

Cree el usuario de la base de datos de WordPress:

CREATE USER 'WPUSER'@localhost IDENTIFIED BY 'PASSWORD';

Reemplace WPUSER y CONTRASEÑA con el nombre de usuario o la contraseña que desee. No copie y pegue el usuario/contraseña predeterminado anterior por motivos de seguridad.

Ahora asigne el acceso de usuario recién creado a la base de datos del sitio web de WordPress solo a continuación.

Asignar base de datos a la cuenta de usuario de WordPress creada:

GRANT ALL PRIVILEGES ON WORDPRESSDB.* TO WPUSER@localhost IDENTIFIED BY 'PASSWORD';

Con todos los ajustes de configuración de la base de datos completos, debe eliminar los privilegios para que surtan efecto y salga.

Privilegios de descarga:

FLUSH PRIVILEGES;

Salir de MariaDB:

EXIT;

Establecer archivos de configuración de WordPress

Debe establecer algunas configuraciones en wp-config-sample.php “ expediente. A continuación, verá cómo cambiar el nombre del archivo de muestra e ingresar la información requerida.

Primero, cambie el nombre del archivo de configuración.

Ir al directorio de WordPress:

cd /var/www/html/wordpress/

Renombrar archivo de configuración:

sudo mv wp-config-sample.php wp-config.php

Usando un editor de texto, abra el archivo wp-config.php recientemente renombrado. En nuestro ejemplo, usaremos nano.

sudo nano wp-config.php

A continuación, ingresará el nombre de la base de datos, la cuenta de usuario con una contraseña, la dirección IP del host si es diferente a localhost.

// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */ 
define( 'DB_NAME', 'wordpressdb' );
/* MySQL database username */ 
define( 'DB_USER', 'wpuser1' );
/* MySQL database password */
define( 'DB_PASSWORD', 'YOUR PASSWORD' );
/* MySQL hostname, change the IP here if external DB set up */ 
define( 'DB_HOST', 'localhost' );
/* Database Charset to use in creating database tables. */
define( 'DB_CHARSET', 'utf8' );
/* The Database Collate type. Don't change this if in doubt. */
define( 'DB_COLLATE', '' );

Mientras esté en este archivo, agregar configuraciones adicionales hará que su WordPress sea más fácil de administrar, como guardar archivos directamente en lugar de usar FTP y aumentar los límites de tamaño de la memoria.

##Save files direct method##
 define( 'FS_METHOD', 'direct' );

##Increase memory limit, 256MB is recommended##
 define('WP_MEMORY_LIMIT', '256M');

##change Wordpress database table prefix if wanted##
 $table_prefix = 'wp_';

Establecer claves Salt de seguridad de WordPress

Sería mejor visitar la API de clave secreta de WordPress para generar la suya propia. El generador de claves salt de direcciones se puede encontrar en https://api.wordpress.org/secret-key/1.1/salt/ . Reemplace las líneas de ejemplo con los códigos del generador.

NO COPIE EL EJEMPLO A CONTINUACIÓN, ES SOLO PARA REFERENCIA.

define('AUTH_KEY',         '<3yfS7/>%m.Tl^8Wx-Y8-|T77WRK[p>(PtH6V]Dl69^<8|K86[_Z},+THZ25+nJG');
define('SECURE_AUTH_KEY',  'bN#Qy#ChBX#Y`PE/_0N42zxgLD|5XpU[mu.n&:t4q~hg<UP/b8+xFTly_b}f]M;!');
define('LOGGED_IN_KEY',    'owpvIO-+WLG|,1)CQl*%gP1uDp}s(jUbYQ[Wm){O(x@sJ#T}tOTP&UOfk|wYsj5$');
define('NONCE_KEY',        '8=Vh|V{D<>`CLoP0$H!Z3gEqf@])){L+6eGi`GAjV(Mu0YULL@sagx&cgb.QVCbi');
define('AUTH_SALT',        '%TX*X$GE-;|?<-^(+K1Un!_Y<hk-Ne2;&{c[-v!{q4&OiJjQon /SHcc/:MB}y#(');
define('SECURE_AUTH_SALT', '=zkDT_%}J4ivjjN+F}:A+s6e64[^uQ<qNO]TfHS>G0elz2B~7Nk.vRcL00cJoo7*');
define('LOGGED_IN_SALT',   '{$-o_ull4|qQ?f=8vP>Vvq8~v>g(2w12`h65ztPM(xo!Fr()5xrqy^k[E~TwI!xn');
define('NONCE_SALT',       'a1G(Q|X`eX$p%6>K:Cba!]/5MAqX+L<A4yU_&CI)*w+#ZB+*yK*u-|]X_9V;:++6');

Configuración del bloque del servidor Nginx

Ahora, está casi listo para instalar WordPress a través de la interfaz de usuario web. Sin embargo, debe configurar su bloque de servidor Nginx. Los ajustes a continuación son bastante cruciales. Cabe destacar la importancia de “try_files $uri $uri/ /index.php?$args;” ya que suele ser un problema con otros tutoriales que dejan el final ?$args omitido, lo que le brinda importantes problemas de salud del sitio llega a la API REST de WordPress.

Primero, cree un nuevo archivo de configuración del servidor con el siguiente comando reemplazando el ejemplo con su nombre de dominio,

sudo nano /etc/nginx/sites-available/example.com.conf

A continuación se muestra un ejemplo; puedes elegir las partes; sin embargo, la “ubicación ~ \.php$” debe estar en el archivo de configuración de Nginx.

NOTA:asegúrese de cambiar www.example.com y example.com y la ruta raíz.

server {

  listen 80;
  listen [::]:80;
  server_name www.example.com example.com;

  root /var/www/html/wordpress;

  index index.php index.html index.htm index.nginx-debian.html;


  location / {
  try_files $uri $uri/ /index.php?$args;
 }

  location ~* /wp-sitemap.*\.xml {
    try_files $uri $uri/ /index.php$is_args$args;
  }

  client_max_body_size 100M;

  location ~ \.php$ {
    fastcgi_pass unix:/run/php/php7.4-fpm.sock;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;
    include snippets/fastcgi-php.conf;
    fastcgi_buffer_size 128k;
    fastcgi_buffers 4 128k;
    fastcgi_intercept_errors on;	
  }

 gzip on; 
 gzip_comp_level 6;
 gzip_min_length 1000;
 gzip_proxied any;
 gzip_disable "msie6";
 gzip_types
     application/atom+xml
     application/geo+json
     application/javascript
     application/x-javascript
     application/json
     application/ld+json
     application/manifest+json
     application/rdf+xml
     application/rss+xml
     application/xhtml+xml
     application/xml
     font/eot
     font/otf
     font/ttf
     image/svg+xml
     text/css
     text/javascript
     text/plain
     text/xml;

  # assets, media
  location ~* \.(?:css(\.map)?|js(\.map)?|jpe?g|png|gif|ico|cur|heic|webp|tiff?|mp3|m4a|aac|ogg|midi?|wav|mp4|mov|webm|mpe?g|avi|ogv|flv|wmv)$ {
      expires    90d;
      access_log off;
  }
  
  # svg, fonts
  location ~* \.(?:svgz?|ttf|ttc|otf|eot|woff2?)$ {
      add_header Access-Control-Allow-Origin "*";
      expires    90d;
      access_log off;
  }

  location ~ /\.ht {
      access_log off;
      log_not_found off;
      deny all;
  }
}

Tenga en cuenta que si está utilizando PHP 8.0 busque y reemplace la línea anterior “fastcgi_pass unix:/run/php/php7.4-fpm.sock;” a “fastcgi_pass unix:/run/php/php8.0-fpm.sock;” .

A continuación, deberá habilitar el archivo de configuración de Nginx desde “sitios disponibles” . Para ello, creará un enlace simbólico a “habilitado para sitios” de la siguiente manera.

sudo ln -s /etc/nginx/sites-available/example.conf /etc/nginx/sites-enabled/

Asegúrese de reemplazar “example.conf” con su nombre de archivo de configuración.

Ahora puede hacer una ejecución en seco y luego reiniciar su servidor Nginx si todo está bien.

sudo nginx -t

Después de comprobar que todo está bien con la prueba de ejecución en seco de Nginx, reinicie el servicio de Nginx.

sudo systemctl restart nginx

Configuración PHP.ini

Antes de pasar a la parte de instalación de la interfaz de usuario web, debe ajustar su PHP para un uso óptimo de WordPress. Estas configuraciones son más una guía, y puede aumentarlas o disminuirlas como mejor le parezca.

Primero, abra su php.ini. Tenga en cuenta que su ubicación puede diferir según su número de versión de PHP.

PHP 7.4:

sudo nano /etc/php/7.4/fpm/php.ini

PHP 8.0:

sudo nano /etc/php/8.0/fpm/php.ini

Los archivos multimedia de WordPress pueden ser bastante importantes y el valor predeterminado puede ser demasiado bajo. Puede aumentar esto a aproximadamente lo que cree que será el tamaño de archivo más extenso. Encuentra las siguientes líneas a continuación y ajústalas a tus necesidades.

##increase upload max size recommend 50 to 100mb## 
 upload_max_filesize = 100MB

##increase post max size recommend 50 to 100mb##
 post_max_size = 100MB

## increase max execution time recommend 150 to 300##
 max_execution_time = 300

## increase GET/POST/COOKIE input variables recommend 5000 to 10000##
max_input_vars = 10000

## increase memory limit recommend 256mb or 512mb##
memory_limit = 256M

Ahora reinicie su servidor PHP-FPM.

PHP 7.4:

sudo systemctl restart php7.4-fpm

PHP 8.0:

sudo systemctl restart php8.0-fpm

La configuración de PHP que ajustó es para el backend de PHP. También deberá cambiar el bloque del servidor Nginx para permitir tamaños de cuerpo grandes. Esto se hace volviendo a abrir el bloque de su servidor y agregando la siguiente línea.

Abre tu bloque de servidor.

sudo nano /etc/nginx/sites-available/example.com

Ajusta esta línea para aumentar el tamaño del cuerpo.

client_max_body_size 100M;

Recuerde, mantenga el tamaño máximo del cliente igual que su configuración de archivo PHP de tamaño máximo .

Luego, pruebe los cambios, luego reinicie su servidor Nginx si todo está bien.

sudo nginx -t

Después de comprobar que todo está bien con la prueba de ejecución en seco de Nginx, reinicie el servicio de Nginx.

sudo systemctl restart nginx

Instalar interfaz de WordPress

Ahora que se completó toda la instalación y configuración del back-end, puede ir a su dominio y comenzar la instalación.

##go to installation address##
 https://www.yoursite.com
##alternative url##
 https://www.yoursite.com/wp-admin/install.php

La primera página que verá es crear un nombre de usuario y contraseña junto con algunos detalles del sitio. Esta será su futura cuenta de inicio de sesión de administrador y también puede cambiarla más adelante.

Si está creando un sitio web, habilite “disuadir encarecidamente a los motores de búsqueda de indexar” impide que Google o Bing o cualquier otro “bot de motor de búsqueda bueno/de buena reputación” de indexar un sitio web WIP. Una vez que termine, llegará a la siguiente pantalla con un inicio de sesión.

Enhorabuena, ha instalado con éxito la última versión de WordPress en Nginx con la pila LEMP.

Proteja Nginx con el certificado gratuito Let's Encrypt SSL

Idealmente, le gustaría ejecutar su Nginx en HTTPS usando un certificado SSL . La mejor manera de hacerlo es usar Let's Encrypt, una autoridad de certificación gratuita, automatizada y abierta dirigida por el Grupo de Investigación de Seguridad de Internet (ISRG) sin fines de lucro .

Primero, instale el paquete certbot de la siguiente manera:

sudo apt install python3-certbot-nginx -y

Una vez instalado, ejecute el siguiente comando para iniciar la creación de su certificado:

sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d www.example.com

Esta configuración ideal incluye forzar redireccionamientos HTTPS 301, un encabezado de seguridad de transporte estricto y grapado OCSP. Solo asegúrese de ajustar el correo electrónico y el nombre de dominio a sus requisitos.

Ahora su URL será HTTPS://www.example.com en lugar de HTTP://www.example.com .

Si usa la antigua URL HTTP , se redirigirá automáticamente a HTTPS .


Debian
  1. Instalar WordPress con Nginx en Debian 10/11

  2. Cómo instalar WordPress con LEMP Stack en CentOS 8

  3. Cómo instalar WordPress con Nginx en Debian 10

  4. Cómo instalar MERN Stack con Nginx en Debian 11

  5. Cómo instalar LEMP Stack en Debian 10 Buster

Cómo instalar phpMyAdmin con Nginx en Debian 11 Bullseye

Cómo instalar WonderCMS con Nginx en Debian 11 Bullseye

Cómo instalar phpBB con LEMP (Nginx, MariaDB y PHP) en Debian 11 Bullseye

Cómo instalar WordPress con LAMP Stack en Debian 11 Bullseye

Cómo instalar Nginx Google Pagespeed en Debian 11 Bullseye

Cómo instalar la pila LEMP en Debian 11