GNU/Linux >> Linux Esercitazione >  >> Debian

Come installare WordPress con Nginx e Let's Encrypt SSL su Debian 11

WordPress è la piattaforma di siti Web più popolare su Internet. È gratuito, open source e funziona bene con quasi tutti i servizi di web hosting, rendendolo uno dei più facili da installare e utilizzare.

Se non hai ancora alcun web hosting, ti consigliamo di installare WordPress sulla tua macchina Debian o VPS locale.

Qui vedremo come installare WordPress con Nginx su Debian 11.

Installa lo stack LEMP

Segui i link sottostanti per installare lo stack LEMP sul tuo sistema Debian per l'installazione di WordPress.

Installa EMP (Nginx, MariaDB e PHP) su Debian 11

Configura l'host virtuale Nginx

Inizieremo con la creazione di un host virtuale per un'installazione di WordPress. Puoi trovare tutti i file di configurazione dell'host virtuale di Nginx in /etc/nginx/conf.d directory. In genere i file host virtuali contengono un nome di dominio, numero di porta, radice del documento, posizione del registro, CGI veloce, ecc.

Supponiamo quanto segue,

Nome di dominio:itzgeek.net, www.itzgeek.net
Porta n.:80
Radice del documento:/usr/share/nginx/www.itzgeek.net/html
Registri: /usr/share/nginx/www.itzgeek.net/logs

Crea una configurazione di host virtuale.

sudo nano /etc/nginx/conf.d/www.itzgeek.net.conf

Quindi, inserisci il seguente contenuto nel file di configurazione sopra. Dovrai cambiare server_name secondo il vostro requisito.

server {
	server_name itzgeek.net www.itzgeek.net;
	root /usr/share/nginx/www.itzgeek.net/html;

	index index.php index.html;

	access_log /usr/share/nginx/www.itzgeek.net/logs/access.log;
	error_log /usr/share/nginx/www.itzgeek.net/logs/error.log;

	# Prevent access to hidden files
	location ~* /\.(?!well-known\/) {
		deny all;
	}

	# Prevent access to certain file extensions
	location ~\.(ini|log|conf)$ {
		deny all;
	}

        # Enable WordPress Permananent Links
	location / {
		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 unix:/run/php/php7.4-fpm.sock;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
	}

}

Crea una radice del documento e una directory dei registri.

sudo mkdir -p /usr/share/nginx/www.itzgeek.net/html/

sudo mkdir -p /usr/share/nginx/www.itzgeek.net/logs/

Verifica il file di configurazione di Nginx con il comando seguente.

sudo nginx -t

Se ottieni quanto segue, significa che la configurazione dell'host virtuale è corretta.

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

Riavvia i servizi Nginx e PHP-FPM.

sudo systemctl reload nginx php7.4-fpm

Crea record DNS

Vai al tuo registrar di domini e crea un record A e CNAME (facoltativo se non desideri utilizzare il sottodominio www) per il tuo dominio. In genere dovrai creare due record per il tuo sito Web WordPress.

  1. Nome di dominio non www (Es. itzgeek.net)>> A punto di registrazione all'IP del tuo server
  2. www Nome di dominio (Es. www.itzgeek.net) >> CNAME record punta a itzgeek.net

Per questa demo, creerò due record in modo che il mio sito Web WordPress sia accessibile all'indirizzo www.itzgeek.net.

Installa il certificato SSL Let's Encrypt

Installa il client Certbot

Il client Certbot, che ci aiuta a generare e installare il certificato SSL Let's Encrypt, è ora disponibile come pacchetto snap per il sistema operativo Debian. Quindi, per prima cosa, installa il demone snapd sul tuo sistema.

sudo apt update

sudo apt install -y snapd

Quindi, aggiorna lo snap all'ultima versione.

sudo snap install core && sudo snap refresh core

Infine, installa il client Certbot utilizzando il comando seguente.

sudo snap install --classic certbot

sudo ln -s /snap/bin/certbot /usr/bin/certbot

Installa certificato SSL

Utilizzare il comando seguente per generare e installare il certificato SSL Let's Encrypt per il server Web Nginx.

sudo certbot --nginx
1. Inserisci l'indirizzo email ricevere la notifica su rinnovi urgenti e avvisi di sicurezza
2. Digita Y e premi Invio per registrarsi al server ACME
3. Digita Y o N per ricevere e-mail su notizie, campagne, newsletter EFF.
4. Certbot rileverà automaticamente il dominio WordPress e ti chiederà il permesso di attivare HTTPS per il tuo sito Web WordPress. Digita 1 o numeri appropriati separati da una virgola nel caso tu abbia più siti web.
Which names would you like to activate HTTPS for?
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: itzgeek.net
2: www.itzgeek.net
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate numbers separated by commas and/or spaces, or leave input
blank to select all options shown (Enter 'c' to cancel): 1,2

Attendi il completamento dell'installazione SSL. Ora sarai in grado di accedere al sito Web con HTTPS.

Nota: Se accedi al sito ora, riceverai un errore 403 vietato perché devi ancora inserire file WordPress.

Reindirizza le richieste HTTP non www a www HTTPS con Nginx

Potresti voler configurare il server Nginx per reindirizzare il traffico dal sito HTTP non www al sito HTTPS WWW, ad esempio http://itzgeek.net>> https://www.itzgeek.net.

Rinnovo automatico del certificato SSL

Il client Certbot ora include il rinnovo automatico dei certificati SSL tramite systemd. Quindi, non dovrai rinnovare i certificati manualmente.

Installa WordPress con Nginx

Crea database WordPress

Innanzitutto, accedi al server del database MariaDB/MySQL.

sudo mysql -u root -p

Quindi, crea il database per l'installazione di WordPress insieme all'utente e alla password del database.

CREATE DATABASE wpdatabase;

CREATE USER 'wpuser'@'localhost' IDENTIFIED BY 'wppassword';

GRANT ALL PRIVILEGES ON wpdatabase.* TO 'wpuser'@'localhost';

EXIT

Scarica WordPress

Scarica l'ultima versione del programma di installazione di WordPress utilizzando il comando seguente.

curl -O https://wordpress.org/latest.tar.gz

Quindi, estrai il file scaricato.

tar -zxvf latest.tar.gz

E poi, sposta i file nella directory principale del documento del tuo sito web.

sudo mv wordpress/* /usr/share/nginx/www.itzgeek.net/html/

Aggiorna la proprietà e un gruppo della directory di WordPress.

sudo chown -R www-data:www-data /usr/share/nginx/www.itzgeek.net/

Installa WordPress

Apri il browser e visita il dominio del tuo sito Web WordPress per eseguire l'installazione di WordPress.

https://il-tuo-sito-wordpress

1. Scegli la Lingua di installazione e fai clic su Continua

2. Fai clic su Andiamo!

3. Inserisci i dettagli del database WordPress e quindi fai clic su Invia

4. Fai clic su Esegui l'installazione

5. Immettere le informazioni sul sito Web WordPress e quindi fare clic su Installa WordPress

6. Fai clic su Accedi per accedere al backend di amministrazione di WordPress per gestire l'installazione di WordPress. In alternativa, puoi accedere al backend di WordPress andando su https://your-wordpress-website/wp-admin

Accedi al sito Web WordPress

Ora potrai accedere al sito con il tuo nome di dominio.

https://il-tuo-sito-wordpress

Conclusione

È tutto. Spero che tu abbia imparato a installare WordPress con Nginx su Debian 11.


Debian
  1. Installa Lets Encrypt e Secure Nginx con SSL/TLS in Debian 9

  2. Installa Automad CMS con Nginx e Lets Encrypt SSL su Debian 10

  3. Come installare WordPress con Nginx e Lets Encrypt SSL su CentOS 8

  4. Come installare Let's Encrypt SSL su Ubuntu 18.04 con Nginx

  5. Come installare WordPress con Nginx su Debian 10

Come installare Let's Encrypt SSL in Apache su Debian 11

Come installare Drupal con Nginx e Let's Encrypt SSL su Debian 11

Come installare Joomla con Nginx e Let's Encrypt SSL su Debian 11

Come installare Let's Encrypt SSL in Nginx su Debian 11

Come installare Nginx con Let's Encrypt TLS/SSL su Ubuntu 20.04

Come installare Nginx con Let's Encrypt SSL su Fedora 35