Uno stack LAMP è un assortimento di software che contiene tutto ciò di cui hai bisogno per servire un sito Web, mostrare contenuti dinamici e archiviare o recuperare dati da un database. Il software è tutto all'interno dell'acronimo LAMP, ovvero il sistema operativo Linux, il server Web Apache, il database MySQL (o MariaDB in alternativa) e il linguaggio di programmazione PHP.
I componenti da cui è costruito LAMP sono tutti aperti fonte. Se hai scaricato Ubuntu 22.04 e l'hai installato anche sul tuo PC, hai già fatto il primo requisito. Successivamente, devi solo mettere in funzione il tuo stack LAMP. In questa guida, mostreremo le istruzioni passo passo per installare uno stack LAMP su Ubuntu 22.04 Jammy Jellyfish Linux.
In questo tutorial imparerai:
- Come installare il server LAMP su Ubuntu 22.04
- Come aprire la porta del firewall per consentire il traffico in entrata HTTP e HTTPS
- Come connettersi al database MySQL utilizzando uno script PHP
Categoria | Requisiti, convenzioni o versione del software utilizzata |
---|---|
Sistema | Ubuntu 22.04 Jammy Medusa |
Software | LAMPADA |
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 |
Configurazione del server LAMP su Ubuntu 22.04 istruzioni passo passo
- Puoi installare lo stack del server LAMP utilizzando il
apt
comando e includendo il numero minimo di pacchetti:$ sudo apt update $ sudo apt install apache2 php-mysql libapache2-mod-php mysql-server
o utilizzando il
tasksel
comando:$ sudo tasksel install lamp-server
- Se vuoi che lo stack del tuo server web si avvii automaticamente al riavvio del sistema, dovrai abilitare MySQL e Apache in systemd con i seguenti comandi. In questo modo verranno avviati anche i servizi in questo momento poiché forniamo il
--now
opzione.$ sudo systemctl enable --now mysql $ sudo systemctl enable --now apache2
- Esegui il comando seguente per proteggere l'installazione di MySQL e impostare la password di root. Ci saranno alcune richieste da seguire. Si consiglia di disabilitare l'accesso root remoto quando viene visualizzata la domanda, a meno che non ci siano circostanze che lo richiedono.
$ sudo mysql_secure_installation
- Per confermare che il nostro server web è accessibile e che PHP funziona come previsto, possiamo creare un file chiamato
info.php
all'interno del/var/www/html
directory. Il file dovrebbe contenere la riga seguente, che verifica se PHP funziona o meno. - Nel tuo browser, vai alla pagina di test che abbiamo creato aprendo l'URL su
http://localhost/info.php
. Dovresti vedere un risultato come quello nello screenshot qui sotto. - Successivamente, configuriamo un utente e un database per il nostro server MySQL.
$ sudo mysql mysql> CREATE DATABASE linuxconfig; mysql> CREATE USER `admin`@`localhost` IDENTIFIED WITH mysql_native_password BY 'yourpass'; mysql> GRANT ALL ON linuxconfig.* TO `admin`@`localhost`; mysql> FLUSH PRIVILEGES; mysql> exit
Con questi comandi abbiamo creato un nuovo utente chiamato
admin
, che ha i permessi completi su un database chiamatolinuxconfig
. - Con il nostro database MySQL e configurato dall'utente, possiamo creare una semplice pagina di test per vedere se siamo in grado di connetterci a MySQL tramite php. Incolla il seguente script in un file, a cui accederemo da un browser web. Assicurati di sostituire il nome del database, il nome utente e la password con quelli tuoi. Conserveremo questo file come
/var/www/html/mysql-test.php
<?php $conn = new mysqli("localhost", "admin", "yourpass", "linuxconfig"); if ($conn->connect_error) { die("ERROR: Unable to connect: " . $conn->connect_error); } echo 'Connected to the database. '; $conn->close(); ?>
Quindi, prova ad accedere alla pagina: - Facoltativamente, puoi impostare la crittografia SSL con un certificato gratuito di Let's Encrypt. Installa semplicemente il bot del certificato ed esegui le istruzioni per rispondere ad alcune domande. Ovviamente, avrai bisogno di un nome di dominio completo puntato al tuo server web affinché funzioni.
$ sudo apt install certbot python3-certbot-apache $ certbot --apache
- Infine, apri le porte firewall 80 e 443 per consentire il traffico in entrata remoto:
$ sudo ufw allow in "Apache Full"
Pensieri conclusivi
In questo tutorial, abbiamo visto come installare e configurare uno stack di server Web Ubuntu 22.04 LAMP. Ciò ha comportato l'installazione dei singoli pacchetti software, ovvero Apache, MariaDB e PHP. LAMP è un ottimo modo per mettere in funzione uno stack completo in brevissimo tempo. Il tuo sistema è ora pronto per servire e archiviare contenuti web dinamici.