GNU/Linux >> Linux Esercitazione >  >> Debian

Come configurare un server LEMP su Debian 10 Buster

LEMP è un'ottima alternativa ai tradizionali server LAMP. Nginx è più leggero e più veloce di Apache in alcune situazioni. Può anche essere configurato per fare altre cose utili, come servire come proxy inverso. Proprio come con LAMP, Debian è un'eccellente piattaforma per i server LEMP. Tutto ciò di cui hai bisogno è disponibile nei repository Debian, quindi è semplice iniziare.

In questo tutorial imparerai:

  • Come configurare MariaDB
  • Come installare PHP
  • Come installare Nginx
  • Come configurare Nginx
  • Come testare il tuo server

PHPinfo su LEMP su Debian 10.

Requisiti e convenzioni software utilizzati

Requisiti software e convenzioni della riga di comando Linux
Categoria Requisiti, convenzioni o versione del software utilizzata
Sistema Debian 10 Buster
Software Nginx, MariaDB e PHP
Altro Accesso privilegiato al tuo sistema Linux come root o tramite sudo comando.
Convenzioni # – richiede che i comandi linux dati vengano eseguiti con i privilegi di root direttamente come utente root o usando sudo comando
$ – richiede che i comandi linux dati vengano eseguiti come un normale utente non privilegiato

Configura MariaDB

Il miglior punto di partenza per configurare il server LEMP è il database. Per questa guida, MaraiDB fungerà da database. Dal momento che è un sostituto drop-in di MySQL, MariaDB è un'opzione eccellente. Prima di poter utilizzare MariaDB per qualsiasi progetto, dovrai configurarlo. Non richiede molto per far funzionare un'app come WordPress, quindi non ci vorrà molto.

Installa MariaDB

Inizia installando effettivamente il server MariaDB.

$ sudo apt install mariadb-server

Imposta il database

Con MariaDB installato, sei pronto per preparare il tuo database per funzionare con le app web. MariaDB ha uno script che ti aiuterà a proteggere automaticamente il tuo server di database, quindi inizia eseguendolo.

$ sudo mysql_secure_installation

Segui le istruzioni nello script. Imposta una password di root, quando ti viene chiesto. Le impostazioni predefinite vanno bene per tutto il resto.

Ora, accedi a MariaDB usando mysql comando e specificando la root utente.

# mysql -u root -p

Crea un database per il tuo progetto.

CREATE DATABASE newdb;

Quindi, crea un utente che si connetterà e gestirà il database.

CREATE USER 'username'@'localhost' IDENTIFIED BY 'userpassword';

Quell'utente avrà bisogno del pieno controllo del database per poter eseguire un'applicazione web. Concedigli tutti i privilegi sul database e le sue tabelle.

GRANT ALL PRIVILEGES ON newdb.* TO 'username'@'localhost';

Tutto è pronto e pronto per l'uso. Svuota i tuoi privilegi ed esci da MariaDB.

FLUSH PRIVILEGES;
\q

Installa PHP

PHP è il prossimo pezzo del puzzle. Non avrai bisogno dell'intero pacchetto PHP di Debian, solo PHP-FPM. Installalo con il modulo MySQL.

$ sudo apt install php-fpm php-mysql

Installa Nginx

Quasi tutto è a posto. Devi solo configurare il server web, Nginx. Per iniziare, installa Nginx sul tuo sistema dai repository Debian.

$ sudo apt install nginx

Configura Nginx

Nginx è un potente server web e offre un sacco di opzioni. Ciò significa anche che sono necessarie molte configurazioni per farlo funzionare esattamente come desideri. Questa guida ti fornirà una configurazione di lavoro di base, ma puoi fare molto di più con Nginx.

Le configurazioni del sito Nginx sono archiviate in /etc/nginx/sites-available e collegato a /etc/nginx/sites-enabled . Crea un nuovo file per la configurazione del tuo server in /etc/nginx/sites-available e aprilo nel tuo editor di testo.

Inizia creando un blocco server per dire a Nginx che si tratta di una nuova configurazione del sito.

server {
}

Il resto della tua configurazione andrà in quel blocco. Quindi, aggiungi gli indirizzi di ascolto. Questi sono i numeri di porta seguiti da importanti attributi del tuo sito. Se questo sarà il tuo unico sito o quello predefinito, aggiungi default_server dopo il numero di porta.

server {
    listen 80 default_server;
    listen [::]:80 default_server;
}

Aggiungi nella cartella principale web in cui desideri inserire il tuo sito. /var/www/html è la solita impostazione predefinita. Segui ciò facendo conoscere a Nginx il nome dell'indice del tuo sito, meglio noto come home page.

server {
    listen 80 default_server;
    listen [::]:80 default_server;

    root /ver/www/html;
    index index.php index.html;
}

Ora aggiungi il nome di dominio del tuo sito come server_name . Se questo è solo un server locale, usa _ al posto di un dominio.

server {
    listen 80 default_server;
    listen [::]:80 default_server;

    root /ver/www/html;
    index index.php index.html;

    server_name yourwebsite.com;

}

Il prossimo blocco di configurazione dice a Nginx di verificare la presenza di file corrispondenti all'indirizzo web corrente.

server {
    listen 80 default_server;
    listen [::]:80 default_server;

    root /ver/www/html;
    index index.php index.html;

    server_name yourwebsite.com;

    location / {
        try_files $uri $uri/ =404;
    }

}

Configurazione Nginx per LEMP su Debian 10.

Infine, quest'ultimo blocco dice a Nginx di passare i file PHP a PHP-FPM. È lì che verrà svolto il grosso del lavoro.

server {
    listen 80 default_server;
    listen [::]:80 default_server;

    root /ver/www/html;
    index index.php index.html;

    server_name yourwebsite.com;

    location / {
        try_files $uri $uri/ =404;
    }

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/var/run/php/php7.3-fpm.sock;
    }

}

Quando hai finito, salva la configurazione ed esci. Ora collegalo a sites-enabled .

$ sudo ln -s /etc/nginx/sites-available/your-site /etc/nginx/sites-enabled/your-site

Quindi, riavvia il server per abilitare il sito.

$ sudo systemctl restart nginx

Testa il tuo server

Il modo più semplice per assicurarsi che il tuo server funzioni correttamente è creare un nuovo file PHP nella tua radice web per eseguire del codice PHP. Crea index.php su /var/www/html/ e aprilo con il tuo editor di testo. Inserisci la seguente riga di codice nel file e salvalo.

<?php phpinfo(); ?>

Apri il browser e accedi al tuo server. Dovresti vedere una tabella di informazioni PHP sul tuo server. Se lo fai, il tuo server funziona normalmente ed è pronto per la tua applicazione PHP, come WordPress.

Conclusione

Da lì, puoi fare qualsiasi cosa. La configurazione del server rimarrà al suo posto e tutto dovrebbe rimanere funzionante, a meno che non lo modifichi. Puoi anche aggiungere più siti allo stesso server Nginx con configurazioni simili. Basta cambiare il server_name per puntare a un dominio diverso.


Debian
  1. Come installare e configurare PHP e Nginx (LEMP) su Debian 11

  2. Come configurare un server SFTP su Debian 11 Server

  3. Come installare MySQL Server su Debian 10 Buster

  4. Come installare Zabbix su Debian 9

  5. Come installare lo stack LEMP su Debian 10 Buster

Come configurare un server Minecraft su Debian 10

Come installare Nginx, MariaDB, PHP (stack LEMP) su Debian 9

Come installare Nginx, MariaDB, PHP (LEMP Stack) su Debian 11

Come installare lo stack LEMP su Debian 10 Buster Server/Desktop

Come installare un server minimo Debian 10 (Buster).

Come installare il server LEMP su CentOS 8