Come installare WordPress con Stack LEMP su Debian 11 Bullseye

WordPress è il sistema di gestione dei contenuti più dominante scritto in PHP, combinato con database MySQL o MariaDB. È possibile creare e mantenere un sito senza una conoscenza preliminare dello sviluppo web o della codifica. La prima versione di WordPress è stata creata nel 2003 da Matt Mullenweg e Mike Little ed è ora utilizzata dal 70% del mercato web noto, secondo W3Tech. WordPress è disponibile in due versioni: l'open source gratuito WordPress.org che collaborano con noi, attingono direttamente dalla storia e dalla tradizione veneziana WordPress.com, un servizio a pagamento che parte da $ 5 al mese fino a $ 59. L'utilizzo di questo sistema di gestione dei contenuti è facile e spesso visto come un trampolino di lancio per creare un blog o un sito simile in primo piano.

Nel seguente tutorial imparerai come installare WordPress self-hosted utilizzando le ultime versioni di Nginx, MariaDB e PHP disponibili.

pubblicità

Prerequisiti

  • Sistema operativo consigliato: Debian 11 Bullseye
  • Account utente: Un account utente con accesso sudo o root.
  • Pacchetti richiesti: elencato in tutto il tutorial

Aggiorna il sistema operativo

Aggiorna il tuo Debian sistema operativo per assicurarsi che tutti i pacchetti esistenti siano aggiornati:

sudo apt update && sudo apt upgrade -y

Il tutorial utilizzerà il comando sudo che collaborano con noi, attingono direttamente dalla storia e dalla tradizione veneziana supponendo che tu abbia lo stato di sudo.

Per verificare lo stato di sudo sul tuo account:

sudo whoami

Esempio di output che mostra lo stato di sudo:

[joshua@debian~]$ sudo whoami
root

Per configurare un account sudo esistente o nuovo, visita il nostro tutorial su Aggiungere un utente a Sudoers su Debian.

Per utilizzare l' account di root, usa il seguente comando con la password di root per accedere.

su

Installa il pacchetto CURL e UNZIP

Il tutorial utilizza il comando curl e decomprimere durante alcune parti. Per assicurarti che sia installato, esegui il seguente comando nel tuo terminale:

sudo apt install curl unzip -y

Installa l'ultimo Nginx – (Stack LEMP)

Per avviare l'installazione dello stack LEMP, è necessario installare il Nginx server web. Un metodo consiste nell'installare l'ultima linea principale o stabile di Nginx dal repository Ondřej Surý per avere il software più aggiornato. Molti utenti di Ubuntu conoscerebbero il suo PPA e puoi fare lo stesso in Debian.

Per utilizzare l'ultima versione di Nginx mainline o stable, dovrai prima importare il repository.

Per importare il repository principale:

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

Per importare un repository stabile:

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

Aggiorna il tuo repository per riflettere la nuova modifica:

sudo apt update

Ora che hai installato il Repository Nginx e aggiornato l'elenco dei repository, installa Nginx con quanto segue:

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

Esempio di output:

Come installare WordPress con LEMP (Nginx, MariaDB e PHP) su Debian 11 Bullseye

Tipo Sì, quindi premere il tasto TASTO INVIO per procedere e completare l'installazione.

Ora controlla per assicurarti che l'ultimo Nginx dal repository Ondřej Surý sia stato installato utilizzando il comando apt-cache policy. Notare la esempio di tutorial linea principale Nginx installata:

apt-cache policy nginx

Esempio di output per Linea principale di Nginx:

Come installare WordPress con LEMP (Nginx, MariaDB e PHP) su Debian 11 Bullseye

Tieni presente che potrebbe esserti richiesto di mantenere o sostituire il tuo esistente / etc / nginx /nginx.conf file di configurazione durante l'installazione. Si consiglia di conservare il file di configurazione corrente premendo (N).

Installando Nginx con il custom, il repository viene fornito con moduli aggiuntivi compilati, uno dei moduli più ordinati e consigliati da abilitare è il modulo Brotli.

Per installare brotelli, apri i tuoi nginx.conf file di configurazione:

nano /etc/nginx/nginx.conf

Ora aggiungi le righe aggiuntive prima nel HTTP{} sezione:

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;

Il brotli_comp_level può essere impostato tra 1 (minimo) che collaborano con noi, attingono direttamente dalla storia e dalla tradizione veneziana 11 (più alto). In genere, la maggior parte dei server si trova nel mezzo, ma se il tuo server è un mostro, imposta su 11 e monitora i livelli di utilizzo della CPU.

Quindi, prova per assicurarti che le modifiche funzionino correttamente prima di renderle attive:

sudo nginx -t

Se le modifiche funzionano correttamente, dovresti vedere quanto segue:

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

Ora apporta le modifiche in tempo reale riavviando il tuo server:

sudo systemctl restart nginx

Quindi, abilita Nginx all'avvio del sistema:

sudo systemctl enable nginx

Infine, verifica che Nginx funzioni correttamente; questo dovrebbe andare bene per saltare se hai eseguito il nginx -t comando e non ha avuto errori.

systemctl status nginx

Esempio di output:

Come installare WordPress con LEMP (Nginx, MariaDB e PHP) su Debian 11 Bullseye
pubblicità

Installa l'ultima MariaDB (LEMP STACK)

Il tutorial consiglierà l'installazione di MariaDB costantemente su MySQL a causa delle prestazioni più di ogni altra cosa.

Innanzitutto, importa il repository ufficiale di MariaDB, 10.6 è l'attuale stabile, ma 10.7 è la nuova versione in uscita ma forse non altrettanto stabile.

Opzione 1 – Importa 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

Opzione 2 – Importa 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

Dopo aver scelto una versione, aggiorna il tuo repository APT.

sudo apt update

Installa MariaDB su Debian Desktop o Server

Per installare MariaDB, dovrai installare i pacchetti client e server. Questo può essere fatto come segue:

sudo apt install mariadb-server mariadb-client

Esempio di output:

Come installare WordPress con LEMP (Nginx, MariaDB e PHP) su Debian 11 Bullseye

Tipo Sì, quindi premere il tasto TASTO INVIO per procedere e completare l'installazione.

Conferma l'installazione di MariaDB controllando la versione e compila:

mariadb --version

Esempio di output:

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

Quindi, avvia il tuo servizio MariaDB eseguendo il seguente comando per avviare e abilitare all'avvio:

sudo systemctl start mariadb && sudo systemctl enable mariadb

Output di esempio in caso di successo:

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

Controlla lo stato del server MariaDB

Ora hai installato MariaDB e puoi verificare lo stato del software del database utilizzando il seguente comando systemctl:

systemctl status mariadb

Per impostazione predefinita, lo stato di MariaDB sarà disattivato. Per avviare MariaDB, usa il seguente comando:

sudo systemctl start mariadb

Ora ricontrolla lo stato e dovresti ottenere quanto segue:

Come installare WordPress con LEMP (Nginx, MariaDB e PHP) su Debian 11 Bullseye

Per fermare MariaDB:

sudo systemctl stop mariadb

Per abilitare MariaDB all'avvio del sistema:

sudo systemctl enable mariadb

Per disabilitare MariaDB all'avvio del sistema:

sudo systemctl disable mariadb

Per riavviare il servizio MariaDB:

sudo systemctl restart mariadb

Proteggi MariaDB con Security Script

Successivamente, ti verrà dato un messaggio che ti chiederà di inserire il tuo (password di root MariaDB). Per ora, premi il tasto (ACCEDERE) key poiché la password di root non è ancora impostata come di seguito:

sudo mysql_secure_installation

Quindi, digita (Y) e premere invio per impostare il (Root) password come di seguito:

La prossima serie di domande che puoi tranquillamente colpire (ACCEDERE), che risponderà (Y) a tutte le successive domande che ti chiedono (rimuovere gli utenti anonimi, disabilitare l'accesso root remoto e rimuovere il database di prova). Notare la (Y) è in maiuscolo, il che significa che è la risposta predefinita quando si preme il tasto (ACCEDERE) chiave.

Esempio di seguito:

[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!

Panoramica di ciò che avrebbe dovuto essere fatto sopra:

  • Impostazione della password per radice conti.
  • Rimozione degli account root accessibili dall'esterno dell'host locale.
  • Rimozione di account utente anonimo.
  • Rimozione del database di prova, a cui per impostazione predefinita possono accedere utenti anonimi.

Questo passaggio è essenziale per la sicurezza del database MariaDB e non deve essere modificato o saltato a meno che tu non sappia cosa stai facendo.

Installa l'ultimo PHP (LEMP STACK)

L'ultima parte del tutorial sarà l'installazione di PHP, che è il backend che comunica tra Apache e MariaDB, l'intermediario. PHP 8.0 sta diventando relativamente stabile e sono ora disponibili le versioni più recenti di PHP 8.1.

Il tutorial si concentrerà sull'importazione dell'ultima versione PHP di Ondřej Surý, il manutentore di Debian PHP. Questo è sempre aggiornato anche quando le nuove versioni di PHP vengono eliminate.

Importa tutto il resto del repository PHP

Il primo passaggio consiste nell'importare e installare il GPG e il repository.

Nel tuo terminale, usa il seguente comando.

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

Questo comando installerà il repository PHP e aggiornerà il tuo repository APT.

Successivamente, aggiorna l'elenco dei repository poiché il nuovo repository richiederà l'aggiornamento di alcuni pacchetti esistenti e si consiglia di farlo prima di installare qualsiasi versione di PHP.

sudo apt upgrade

Opzione 1. Installa PHP 7.4

Ora puoi procedere all'installazione di PHP 7.4 per le tue particolari esigenze come segue:

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

Verifica l'installazione e controlla la versione e la build:

php -v

Esempio di output:

Come installare WordPress con LEMP (Nginx, MariaDB e PHP) su Debian 11 Bullseye

Successivamente, avvia e abilita l'avvio automatico di PHP 7.4-FPM all'avvio.

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

Ora, per impostazione predefinita, PHP-FPM dovrebbe essere in esecuzione. Per confermare ciò, utilizzare il seguente comando systemctl:

sudo systemctl status php7.4fpm

Esempio di output:

Come installare WordPress con LEMP (Nginx, MariaDB e PHP) su Debian 11 Bullseye

Opzione 2. Installa PHP 8.0

Ora puoi procedere all'installazione di PHP 8.0 per le tue particolari esigenze come segue:

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

Verifica l'installazione e controlla la versione e la build:

php -v

Esempio di output:

Come installare WordPress con LEMP (Nginx, MariaDB e PHP) su Debian 11 Bullseye

Ora, per impostazione predefinita, PHP-FPM dovrebbe essere in esecuzione. Per confermare ciò, utilizzare il seguente comando systemctl:

sudo systemctl status php8.0-fpm

Esempio di output:

Come installare WordPress con LEMP (Nginx, MariaDB e PHP) su Debian 11 Bullseye

Installa il backend di WordPress

Scarica WordPress

Visita WordPress.org pagina di download e scorrere verso il basso per trovare il "ultime.zip" Link per scaricare. Quindi utilizzando il comando wget, scarica il file.

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

Crea una struttura di cartelle per WordPress

Ora che hai scaricato l'archivio, procedi a decomprimerlo e spostarlo nel tuo elenco www.

Crea la directory per WordPress:

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

Decomprimi WordPress nella directory www:

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

Devi impostare il permessi del proprietario della directory su WWW, altrimenti avrai problemi con i permessi di scrittura di WordPress.

Imposta il permesso chown (importante):

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

Imposta il permesso chmod (importante):

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

Crea database per WordPress

WordPress richiede l'esecuzione di un database, quindi è stato necessario installare MariaDB. Prima di continuare, devi creare un database per WordPress usando MariaDB. Innanzitutto, apri la console del terminale e digita quanto segue.

Avvia la shell MariaDB come root:

sudo mariadb -u root

Secondo comando alternativo:

sudo mysql -u root

Quindi, crea il database. Questo può essere qualsiasi nome tu voglia. Per la guida, la chiamerai "WORDPRESSDB."

Crea database WordPress:

CREATE DATABASE WORDPRESSDB;

Dopo che il database è stato creato, dovresti creare un nuovo utente per il nuovo sito WordPress.

Questo viene fatto come misura di sicurezza, quindi ogni database ha un utente diverso. Se un nome utente viene compromesso, l'attaccante non accede a tutti i database dell'altro sito web.

Crea l'utente del database WordPress:

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

Sostituisci WPUSER e PASSWORD con qualsiasi nome utente o password desideri. Non copiare e incollare l'utente/pass predefinito sopra per motivi di sicurezza.

Ora assegna all'utente appena creato l'accesso al database del sito Web di WordPress solo di seguito.

Assegna il database all'account utente WordPress creato:

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

Con tutte le impostazioni di configurazione del database complete, è necessario svuotare i privilegi per avere effetto e uscire.

Privilegi di lavaggio:

FLUSH PRIVILEGES;

Esci da MariaDB:

EXIT;

Imposta i file di configurazione di WordPress

È necessario impostare alcune impostazioni nel "wp-config-sample.php" file. Di seguito, vedrai come rinominare il file di esempio e inserire le informazioni richieste.

Innanzitutto, rinomina il file di configurazione.

Vai alla directory di WordPress:

cd /var/www/html/wordpress/

Rinomina file di configurazione:

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

Usando un editor di testo, apri il file wp-config.php appena rinominato. Nel nostro esempio useremo nano.

sudo nano wp-config.php

Successivamente, inserirai il nome del database, l'account utente con una password, l'indirizzo IP dell'host se diverso da 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', '' );

Mentre sei in questo file, l'aggiunta di impostazioni extra renderà il tuo WordPress più facile da gestire, come il salvataggio diretto dei file invece di utilizzare FTP e l'aumento dei limiti di dimensione della 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_';

Imposta le chiavi di sicurezza Salt di WordPress

Sarebbe meglio visitare l'API della chiave segreta di WordPress per generare la tua. Il generatore di chiavi di indirizzo salt può essere trovato all'indirizzo https://api.wordpress.org/secret-key/1.1/salt/. Sostituisci le righe di esempio con i codici del generatore.

NON COPIARE L'ESEMPIO SOTTOSTANTE ED È SOLO PER RIFERIMENTO.

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');

Configurazione del blocco del server Nginx

Ora sei quasi pronto per installare WordPress tramite l'interfaccia utente web. Tuttavia, è necessario configurare il blocco del server Nginx. Le impostazioni di seguito sono piuttosto cruciali. Va notato per sottolineare l'importanza di "try_files $uri $uri/ /index.php?$args;" poiché è spesso un problema con altri tutorial che lasciano il finale ?$args lasciato fuori, dandoti i principali problemi di salute del sito arriva all'API REST di WordPress.

Innanzitutto, crea un nuovo file di configurazione del server con il seguente comando sostituendo l'esempio con il tuo nome di dominio,

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

Di seguito è riportato un esempio; puoi scegliere le parti; in ogni caso, il “posizione ~ \.php$” deve essere nel file di configurazione di Nginx.

NOTA: assicurati di modificare www.example.com ed example.com e il percorso di root.

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;
  }
}

Nota, se stai usando PHP 8.0 trova e sostituisci la riga sopra “fastcgi_pass unix:/run/php/php7.4-fpm.sock;” a “fastcgi_pass unix:/run/php/php8.0-fpm.sock;”.

Successivamente, dovrai abilitare il file di configurazione di Nginx da “siti disponibili”. Per fare ciò, creerai un collegamento simbolico a "siti abilitati" come segue.

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

Assicurati di sostituire “esempio.conf” con il nome del file di configurazione.

Ora puoi eseguire una corsa a secco, quindi riavviare il server Nginx se tutto è ok.

sudo nginx -t

Dopo aver verificato e tutto è ok con il test di funzionamento a secco Nginx, riavviare il servizio Nginx.

sudo systemctl restart nginx

Configurazione PHP.ini

Prima di passare alla parte di installazione dell'interfaccia utente web, dovresti regolare il tuo PHP per un uso ottimale per WordPress. Queste impostazioni sono più di una guida e puoi aumentare, diminuire come meglio credi.

Per prima cosa, apri il tuo php.ini. Tieni presente che la tua posizione potrebbe variare a seconda del numero di versione di 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

I file multimediali di WordPress possono essere piuttosto significativi e l'impostazione predefinita può essere troppo bassa. Puoi aumentare questo valore all'incirca a quello che ritieni sarà la dimensione del tuo file più ampia. Trova le seguenti righe di seguito e adatta alle tue esigenze.

##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

Ora riavvia il tuo server PHP-FPM.

PHP 7.4:

sudo systemctl restart php7.4-fpm

PHP 8.0:

sudo systemctl restart php8.0-fpm

Le impostazioni PHP che hai modificato sono per il backend PHP. Dovrai anche modificare il blocco del server Nginx per consentire corporature di grandi dimensioni. Questo viene fatto riaprendo il blocco del server e aggiungendo la riga seguente.

Apri il tuo blocco server.

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

Regola questa linea per aumentare le dimensioni del corpo.

client_max_body_size 100M;

Ricorda, mantieni la dimensione massima del cliente uguale alla tua impostazione file PHP dimensione massima.

Quindi, prova le modifiche, quindi riavvia il tuo server Nginx se tutto è ok.

sudo nginx -t

Dopo aver verificato e tutto è ok con il test di funzionamento a secco Nginx, riavviare il servizio Nginx.

sudo systemctl restart nginx

Installa WordPress Frontend

Ora che tutte le impostazioni e la configurazione del backend sono complete, puoi andare al tuo dominio e iniziare l'installazione.

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

La prima pagina che vedrai sta creando un nome utente e una password insieme ad alcuni dettagli del sito. Questo sarà il tuo futuro account di accesso amministratore e potrai modificarlo anche in seguito.

Come installare WordPress con LEMP (Nginx, MariaDB e PHP) su Debian 11 Bullseye

Se stai costruendo un sito web, abilitando “scoraggia fortemente i motori di ricerca dall'indicizzazione” impedisce a Google o Bing o qualsiasi altro "bot motore di ricerca buono / affidabile" dall'indicizzazione di un sito Web WIP. Una volta terminato, si passerà alla schermata successiva con un login.

Come installare WordPress con LEMP (Nginx, MariaDB e PHP) su Debian 11 Bullseye

Congratulazioni, hai installato con successo l'ultima versione di WordPress su Nginx con lo stack LEMP.

Proteggi Nginx con il certificato gratuito SSL di Let's Encrypt

Idealmente, vorresti eseguire il tuo Nginx su HTTPS utilizzando un certificato SSL. Il modo migliore per farlo è usare Criptiamo, un'autorità di certificazione gratuita, automatizzata e aperta gestita dal Internet Security Research Group (ISRG) senza scopo di lucro.

Innanzitutto, installa il pacchetto certbot come segue:

sudo apt install python3-certbot-nginx -y

Una volta installato, esegui il seguente comando per avviare la creazione del tuo certificato:

sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email you@example.com -d www.example.com

Questa configurazione ideale include reindirizzamenti forzati HTTPS 301, un'intestazione Strict-Transport-Security e OCSP Stapling. Assicurati solo di adattare l'e-mail e il nome di dominio alle tue esigenze.

Ora il tuo URL sarà HTTPS://www.esempio.com invece di HTTP://www.esempio.com.

Se usi il vecchio URL HTTP, reindirizzerà automaticamente a HTTPS.

Commenti e Conclusione

WordPress offre una fantastica capacità di creare siti Web rapidi con modelli e plug-in e il negozio di plug-in ospita un'enorme quantità di opzioni. Tuttavia, per sbloccare il pieno potenziale della maggior parte dei temi e dei componenti aggiuntivi, sono tutti paywall, ma la maggior parte sono convenienti.

L'hosting autonomo di WordPress è piuttosto divertente. Tuttavia, assicurarsi di tenere il passo con la sicurezza e l'aggiornamento è essenziale. WordPress è il CMS più preso di mira al mondo dagli aggressori e il tuo sito, nel suo primo giorno senza nemmeno essere elencato, verrà scansionato alla ricerca di exploit e inizieranno i tentativi di forza bruta.

Sottoscrivi
Notifica
18 Commenti
Feedback in linea
Visualizza tutti i commenti
SKY
GUEST
domenica 24 ottobre 2021 3:26

non è chiaro dove sia necessario il file e il suo nome. {/etc/nginx/sites-available/example.com.conf}
il comando non funziona
– sudo systemctl ln -s /etc/nginx/sites-available/example.conf /etc/nginx/sites-enabled/

SKY
GUEST
Rispondi a  Joshua James
domenica 24 ottobre 2021 6:08

e così è fatto
quando si immette un comando
sudo systemctl ln -s /etc/nginx/sites-available/example.conf /etc/nginx/sites-enabled/
ma dà un errore
Impossibile analizzare la stringa di segnale /etc/nginx/sites-available/test.conf.

grazie per l'articolo, hai la migliore descrizione!

SKY
GUEST
Rispondi a  Joshua James
domenica 24 ottobre 2021 6:29

lavoro 😁🎉grazie!!!

SKY
GUEST
domenica 31 ottobre 2021 10:49

si verifica un errore durante l'immissione della password (Benvenuto nel famoso processo di installazione di WordPress in cinque minuti!) Fornisci un nome utente valido. Ho trovato una soluzione, ma è molto difficile. Forse c'è un'altra soluzione.
https://www.thetechtrackers.com/2019/06/table-prefix-must-not-be-empty.html

SKY
GUEST
Rispondi a  Joshua James
domenica 31 ottobre 2021 1:28

L'ho provato adesso. la situazione non è cambiata

SKY
GUEST
Rispondi a  Joshua James
domenica 31 ottobre 2021 2:39

reinstallato più volte. compreso Debian. accuratamente ripetuto Installa WordPress con LAMP. L'unica differenza che ho notato è stata la Ver 15.1 Distrib 10.5.12-MariaDB (è stata consegnata automaticamente).

SKY
GUEST
Rispondi a  Joshua James
domenica 31 ottobre 2021 3:14

Debian 11/Nginx/MariaDB/PHP 8.0

SKY
GUEST
Rispondi a  Joshua James
domenica 31 ottobre 2021 4:59

quindi dovremo mettere questo bundle linuxcapable.com/how-to-install-wordpress-on-ubuntu-20-04-nginx-mariadb-php7-4/. Grazie per te!!! Buon lavoro. Sto sbagliando qualcosa da qualche parte 😔

SKY
GUEST
Rispondi a  Joshua James
lunedì 1 novembre 2021 7:45

Grazie per le parole di supporto!!! Si è scoperto installare🎉🎉🎉I non è stato installato -Secure MariaDB con Security Script/Secure Nginx con Let's Encrypt SSL Free Certificate.I sostituito l'impianto – Importa chiave e repository GPG
sudo apt-get install software-properties-common dirmngr apt-transport-https
sudo apt-key adv –fetch-keys 'https://mariadb.org/mariadb_release_signing_key.asc'
sudo add-apt-repository 'deb [arch=amd64,i386,arm64,ppc64el] https://ftp.ubuntu-tw.org/mirror/mariadb/repo/10.6/debian sid principale'

forse aiuterà qualcuno – Tutto è scritto in grande dettaglio. Grazie all'autore per il lavoro svolto!

adplus-pubblicità
18
0
Amerei i tuoi pensieri, per favore commenta.x