Com instal·lar WordPress amb Nginx a Debian i Ubuntu


NGINX (pronunciat engine-x) és un servidor HTTP potent, lleuger i flexible de codi obert que ha augmentat en popularitat en els últims anys i ara és la interfície principal del servidor que alimenta alguns dels llocs web amb més trànsit en aquests dies, com ara Facebook, WordPress, Sourceforge o altres.

El que el fa tan ràpid i fiable és el fet que utilitza el mateix disseny modular que Apache, però té un enfocament diferent pel que fa als sockets web, utilitzant una arquitectura asíncrona basada en esdeveniments que no genera processos com ràpid a mesura que rep sol·licituds i també utilitza fitxers de configuració senzills.

Per als sistemes basats en Ubuntu i Debian, Nginx ja està compilat com a paquet als seus repositoris i es pot instal·lar mitjançant la utilitat de paquets apt.

També admet Amfitrions virtuals com Apache i utilitza un canal Fastcgi per comunicar-se amb fitxers PHP al servidor mitjançant PHP-FPM.

Aquest tutorial cobreix la instal·lació i les configuracions bàsiques de fitxers per a Nginx per allotjar un lloc web de WordPress CMS en un host virtual i la configuració s'aplica a Ubuntu 18.04/20.04, Debian 10/9 i Linux Mint 20/19/18.

Instal·lació del servidor web Nginx

1. La instal·lació de Nginx per a Ubuntu, Debian o Linux Mint és tan directa com qualsevol altre paquet i es pot instal·lar amb una simple ordre.

$ sudo apt-get install nginx

2. A continuació, inicieu, activeu i verifiqueu l'estat de Nginx, utilitzeu les ordres systemctl següents.

$ sudo systemctl start nginx
$ sudo systemctl enable nginx
$ sudo systemctl status nginx

Instal·lació del servidor PHP i MariaDB

3. Perquè Nginx pugui executar WordPress, cal que instal·leu els paquets PHP, PHP-FPM i MariaDB.

$ sudo 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

4. A continuació, comproveu que el servei de base de dades MariaDB s'està executant i habilitat per iniciar-se automàticament quan s'iniciï el vostre sistema.

$ sudo systemctl status mariadb
$ sudo systemctl is-enabled mariadb

5. Per comunicar-se amb el backend FastCGI, el servei PHP-FPM ha d'estar actiu al servidor.

$ sudo systemctl start php7.4-fpm
$ sudo systemctl enable php7.4-fpm
$ sudo systemctl status php7.4-fpm

6. Ara heu de fer que la vostra instal·lació de MariaDB sigui segura executant l'script mysql_secure_installation que s'envia amb el paquet MariaDB.

$ sudo mysql_secure_installation

Després d'executar l'script, us portarà a través d'una sèrie de preguntes on podeu respondre yes(y) per millorar la seguretat de la vostra instal·lació de MariaDB de les maneres següents:

  • Introduïu la contrasenya actual per a root (introduïu-ne cap): Enter
  • Vols definir una contrasenya d'arrel? [S/n] y
  • Vols eliminar usuaris anònims? [S/n] y
  • No permeteu l'inici de sessió root de forma remota? [S/n] y
  • Vols eliminar la base de dades de prova i accedir-hi? [S/n] y
  • Recarregar les taules de privilegis ara? [S/n] y

Instal·lació de WordPress

7. Un WordPress requereix una base de dades per emmagatzemar dades al servidor, així que creeu una nova base de dades de WordPress per al vostre lloc web utilitzant l'ordre mysql tal com es mostra.

# mysql -u root -p
MariaDB [(none)]> CREATE DATABASE mysite;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON mysite.* TO 'mysiteadmin'@'localhost' IDENTIFIED BY  '[email !';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;

8. Ara és el moment de crear una ruta arrel WordPress Virtual Host, descarregar l'arxiu de WordPress, extreure-lo i emetre una còpia recursiva a /var/www/html/wordpress.

$ sudo mkdir -p /var/www/html/mysite.com
$ wget http://wordpress.org/latest.tar.gz
$ tar xfvz latest.tar.gz
$ sudo cp -r wordpress/* /var/www/html/mysite.com

9. Per a una instal·lació fluida de WordPress sense cap error de creació de fitxers wp-config.php, concediu als usuaris del sistema www-data de Nginx permís d'escriptura. /var/www/html/mysite.com el camí i revertir els canvis després d'instal·lar WordPress.

$ sudo chown -R www-data /var/www/html/mysite.com
$ sudo chmod -R 755 /var/www/html/mysite.com

Creació d'un host virtual NGINX per al lloc web de WordPress

10. Ara és el moment de crear un amfitrió virtual bàsic per al lloc web de WordPress al servidor Nginx. Executeu l'ordre següent per crear un fitxer de configuració del servidor de WordPress.

$ sudo vim /etc/nginx/conf.d/mysite.com.conf

A continuació, afegiu el contingut següent.

server {
        listen 80;
        listen [::]:80;
        root /var/www/html/mysite.com; index index.php index.html index.htm; server_name mysite.com www.mysite.com; error_log /var/log/nginx/mysite.com_error.log; access_log /var/log/nginx/mysite.com_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; } }

11. Per defecte, Nginx encamina totes les sol·licituds al bloc del servidor default. Per tant, elimineu el bloc del servidor predeterminat per habilitar el vostre lloc web de WordPress o altres llocs web que vulgueu allotjar al mateix servidor més endavant.

$ sudo rm /etc/nginx/sites-enabled/default
$ sudo rm /etc/nginx/sites-available/default

12. A continuació, comproveu la sintaxi de configuració de NGINX per detectar qualsevol error abans de poder reiniciar el servei Nginx per aplicar els nous canvis.

$ sudo nginx -t
$ sudo systemctl restart nginx

Completar la instal·lació de WordPress mitjançant l'instal·lador web

13. Ara obriu el vostre navegador web i completeu la instal·lació de WordPress mitjançant l'instal·lador web.

http://mysite.com/
OR
http://SERVER_IP/

14. A continuació, afegiu la informació del lloc web, com ara el títol, el nom d'usuari de l'administrador, la contrasenya i l'adreça de correu electrònic. A continuació, feu clic a Instal·la WordPress per continuar la instal·lació.

15. Un cop finalitzi la instal·lació de WordPress, accediu al tauler de control de l'administrador del lloc web fent clic al botó d'inici de sessió tal com es destaca a la pantalla següent.

16. A la pàgina d'inici de sessió de l'administrador del lloc web, proporcioneu el vostre nom d'usuari i contrasenya creats a dalt i feu clic a Inicia sessió per accedir al tauler d'administració del vostre lloc.

17. Un cop finalitzada la instal·lació, desfer els permisos emetent l'ordre següent.

$ sudo chown -R root /var/www/html/mysite.com

Activa HTTPS a WordPress

18. Si voleu habilitar HTTPS al vostre lloc web de WordPress, heu d'instal·lar un certificat SSL gratuït de Let's Encrypt tal com es mostra.

$ sudo apt-get update
$ sudo apt-get install software-properties-common
$ sudo add-apt-repository universe
$ sudo apt-get update
$ sudo apt-get install certbot python3-certbot-nginx
$ sudo certbot --nginx

Per confirmar que el vostre lloc de WordPress està configurat correctament mitjançant un certificat SSL gratuït, visiteu el vostre lloc web a https://yourwebsite.com/ i cerqueu la icona de cadenat a la barra d'URL. Alternativament, podeu comprovar l'HTTPS del vostre lloc a https://www.ssllabs.com/ssltest/.

Felicitats! Heu instal·lat correctament la darrera versió de WordPress amb NGINX al vostre servidor, ara comenceu a crear el vostre nou lloc web o bloc.