ITA - Configurare un server LAMP su ArchLinux
September 2020 (406 Words, 3 Minutes)
Introduzione
La piattaforma LAMP è una delle più utilizzate a livello mondiale.
I componenti di base, da cui prende il nome, sono:
- Sistema operativo : GNU/Linux
- Il web server Apache
- il database : MySQL o MariaDB
- un linguaggio di programmazione : Perl, PHP e/o Python
L’archittettura rimane sostanzialamente lo stesso sostiuendo il web server apache con delle alternative :
- nginx
- lighttpd
NB : la seguente guida è intesa per utenti amministratori, i comandi vanno eseguiti con l’utente root o con l’ausilio di sudo
Installazione e configurazione
Installazione
Su archlinux i pacchetti da installare risiedono sui repository ufficiali e per essere installati è necessario eseguire il comando :
pacman -S apache mariadb php
Congiurazione generale
Apache
Apache è uno dei web server più usati al mondo, ed è disponibile in tutte le maggiori distribuzioni; per chi fosse abituato a distribuzioni server come Debian o Ubuntu sentirà subito la mancanza ( come me ) delle cartelle due cartelle :
- sites-availables
- sites-enabled
quindi procediamo subito a crearle con i comandi :
mkdir /etc/httpd/sites-available
mkdir /etc/httpd/sites-enabled
successivamente andiamo a editare il file /etc/httpd/conf/httpd.conf
aggiungendo al fondo:
IncludeOptional /etc/httpd/sites-enabled/*.conf
In questa maniera sarà possibile continuare a creare i file dei VirtualHost dentro la cartella sites-available come da abitudine e linkarline nella cartella sites-enabled solo al momento effettivo dell’abilitazione del sito.
Continuando a esplorare e leggere le configurazioni di default ho deciso di commentare le seguenti righe
# Virtual hosts
#Include conf/extra/httpd-vhosts.conf
.
.
.
# User home directories
#Include conf/extra/httpd-userdir.conf
Questo perchè: nel primo caso erano host di esempio che non mi servono, nel secondo perchè le cartelle utente non rientrano nello scope dei normali webservers.
Per abilitare il servizio all’avvio del sistema e avviarlo usare il comando:
sudo systemctl enable --now httpd
MariaDB
MariaDB è un fork MySQL e nella maggior parte delle distribuzione il suo successore.
Su Linux Arch dopo essere stato installato questo database deve essere inizializzato con il seguente comando :
mariadb-install-db --user=mysql --basedir=/usr --datadir=/var/lib/mysql
abilitazione e avvio del servizio :
sudo systemctl enable --now mariadb
per accedere a database da linea di comando :
- mysql
- mycli
PHP
Dopo l’installazione è buona abitudine configurare la timezone, aprire il file /etc/php/php.ini
e modificare la linea :
date.timezone = Europe/Rome
l’elenco delle timezone disponibili è qui
per abibilita il supporto ai database, aprire il file /etc/php/php.ini
e decommentare le linee:
extension=pdo_mysql
extension=mysqli
extension=sqlite3
extension=pdo_sqlite
Configurazione di un virtualhost
Di seguito la procedura per creare e abilitare un nuovo sito :
- creare il file
/etc/httpd/sites-available/site.conf
-
incollare e aggiustare il contenuto del file
<VirtualHost *:80> ServerAdmin admin@site.local ServerName www.site.local
DocumentRoot "/usr/share/webapps/site" CustomLog /var/log/apache/www.site.local.log combined ErrorLog /var/log/apache/www.site.local.log . . . <Directory "/usr/share/webapps/site"> AllowOverride All Options FollowSymlinks Require all granted </Directory>
</VirtualHost>
-
una volta preparato il file dell’host, linkare il file nella cartella dei siti abilitati
ln -s /etc/httpd/sites-available/site.conf /etc/httpd/sites-enabled/site.conf
- verificare le configurazioni :
apachectl configtest
- se il risultato della verifica è ok, si procede con il reload delle configurazione :
systemctl reload httpd
Riferimenti
- https://it.wikipedia.org/wiki/LAMP
- https://wiki.archlinux.org/index.php/Apache_HTTP_Server
- https://wiki.archlinux.org/index.php/MySQL
- https://wiki.archlinux.org/index.php/MariaDB
- https://wiki.archlinux.org/index.php/PHP
- https://www.php.net/manual/en/timezones.php
Quest'opera è distribuita con Licenza Creative Commons Attribuzione - Condividi allo stesso modo 4.0 Internazionale Theme Moonwalk