Domanda [Tutorial] Configurazione LAMP Stack - Linux Apache Mysql Php

Stato
Discussione chiusa ad ulteriori risposte.

Pelazzo

Utente Electrum
29 Maggio 2016
264
21
34
100
Non ne ho viste di guide simili sul forum, così ho deciso di postarne una, nel caso vorreste creare un sitoweb su un server.

Premetto che fornisco solo informazioni davvero basilari, il minimo indispensabile per far partire il webserver, non coprirò la questione della sicurezza del server nè tantomento mi soffermerò su comandi o configurazioni, i più esperti sapranno adattare tutto alle proprie esigenze.

La configurazione LAMP su un server, che sia VPS, dedicato oppure un webserver casalingo, permette di installare e settare Apache, Mysql e Php su linux.
La distribuzione che userò nella guida è Debian, potete applicare i comandi anche su altre distribuzioni, cercandone ovviamente il corrispettivo.
La guida copre l'installazione di php, di apache e la configurazione del virtual host, anche l'installazione di mysql e la creazione di un database.

Fatta la premessa, Iniziamo:
Se non l'avete già fatto eseguite i comandi di aggiornamento:
Codice:
apt-get update && apt-get upgrade -y

Ora diamo il comando per installare Apache:
Codice:
apt-get install apache2 -y

Installato Apache non ci rimane che installare Mysql con il seguente comando:
Codice:
apt-get install mysql-server -y
Vi viene chiesto di impostare una password per mysql, inseritela e reinseritela per la conferma.

Con il seguente comando avviamo la funzione per la messa in sicurezza di mysql:
Codice:
mysql_secure_installation
Vi viene chiesto di inserire la password che avete impostato al passaggio precedente, poi mysql fa una serie di domande da rispondere con "y" (ovvero yes/si) e "n" (ovvero no). Rispondete a tutte si.

Ora passamo all'installazione di php:
Codice:
apt-get install php5 php-pear php5-mysql php5-gd -y

Non vi rimane che riavviare Apache per rendere effettive tutte le modifiche al webserver:
Codice:
service apache2 restart

Installati i servizi possiamo passare alla configurazione di un Virtual Host con Apache:

Installate l'editor di testo Nano:
Codice:
apt-get install nano -y

Prima di iniziare a configurare dobbiamo creare le cartelle in cui verrano messi i file per il sitoweb:
Sotituite "esempio.com" con il dominio da voi registrato.
Codice:
mkdir /var/www/esempio.com/
mkdir /var/www/esempio.com/public_html
mkdir /var/www/esempio.com/logs
mkdir /var/www/esempio.com/backups

Per terminare la procedura dobbiamo garantire ad Apache i diritti per leggere/scrivere nelle cartelle appena create:
Codice:
chown www-data:www-data /var/www/esempio.com/public_html -R

Adesso abbiamo creato le cartelle dove inserire i file, abbiamo concesso diritti di lettura e scrittura ad apache, non ci rimane che configurare il virtual host.
Inannzitutto disabilitiamo il virtual host di default:
Codice:
a2dissite '*default'

Poi creiamone uno nuovo:
Sostituite sempre "esempio.com" con il vostro dominio:
Codice:
nano /etc/apache2/sites-available/esempio.com.conf
Aperto il file dovete scrivere la seguente configurazione:
Codice:
# domain: esempio.com
# public: /var/www/esempio.com/public_html
<VirtualHost *:80>
    ServerName www.esempio.com
    ServerAlias esempio.com
    DirectoryIndex index.html index.php
    DocumentRoot /var/www/esempio.com/public_html
    LogLevel warn
    ErrorLog /var/www/esempio.com/error.log
    CustomLog /var/www/esempio.com/log/access.log combined
</VirtualHost>
A questo punto usciamo con "Crtl+X", diamo l'ok per salvare con "y" e clicchiamo Invio.

Adesso non ci rimane che abilitare il nuovo virtual host creato:
Codice:
a2ensite esempio.com.conf

Riavviamo Apache:
Codice:
service apache reload

La configurazione per l'host virtuale è funzionante ora, per verificarlo creiamo un semplice file php nella cartella pubblica create prima (ovvero public_html):
Codice:
nano /var/www/esempio.com/public_html/index.php
Creato il file scriviamo:
Codice:
<?php
phpinfo();
?>
Salvate, come prima "Ctrl+X" poi "y" e poi Invio.

Adesso non ci rimane che andare sul browser e vedere se visualizziamo la pagna con le info della versione php. Basta andare su esempio.com oppure inserire l'ip del server. Se avete fatto tutto correttamente visualizzate una pagina con tutte le informazioni relative alla versione php installata.

Terminata la procedura della configurazione del virtual host, non ci rimane che creare un database mysql se ne avete bisogno.

Iniziamo lanciando il seguente comando:
Codice:
mysql -u root -p
Vi verrà chiesto di inserire la password d mysql impostata all'inizio.

Dopodichè lanciamo i seguenti comandi:
(sostituendo a piacimento "NOMEDATABASE", "NOMEUSER" e "PASSWORD")
Codice:
create database NOMEDATABASE;

create user NOMEUSER;

grant all on NOMEDATABASE.* to 'NOMEUSER' identified by 'PASSWORD';

flush privileges;

exit;

Bene, adesso il database è stato creato, e i dati inseriti potete usarli per configurare script che hanno necessità di un database mysql per poter funzionare.

Spero sia stato d'aiuto ai neofiti, lasciatemi un thanks se sono stato d'aiuto.
 
  • Mi piace
Reazioni: Stefano Novelli
Non ne ho viste di guide simili sul forum, così ho deciso di postarne una, nel caso vorreste creare un sitoweb su un server.

Premetto che fornisco solo informazioni davvero basilari, il minimo indispensabile per far partire il webserver, non coprirò la questione della sicurezza del server nè tantomento mi soffermerò su comandi o configurazioni, i più esperti sapranno adattare tutto alle proprie esigenze.

La configurazione LAMP su un server, che sia VPS, dedicato oppure un webserver casalingo, permette di installare e settare Apache, Mysql e Php su linux.
La distribuzione che userò nella guida è Debian, potete applicare i comandi anche su altre distribuzioni, cercandone ovviamente il corrispettivo.
La guida copre l'installazione di php, di apache e la configurazione del virtual host, anche l'installazione di mysql e la creazione di un database.

Fatta la premessa, Iniziamo:
Se non l'avete già fatto eseguite i comandi di aggiornamento:
Codice:
apt-get update && apt-get upgrade -y

Ora diamo il comando per installare Apache:
Codice:
apt-get install apache2 -y

Installato Apache non ci rimane che installare Mysql con il seguente comando:
Codice:
apt-get install mysql-server -y
Vi viene chiesto di impostare una password per mysql, inseritela e reinseritela per la conferma.

Con il seguente comando avviamo la funzione per la messa in sicurezza di mysql:
Codice:
mysql_secure_installation
Vi viene chiesto di inserire la password che avete impostato al passaggio precedente, poi mysql fa una serie di domande da rispondere con "y" (ovvero yes/si) e "n" (ovvero no). Rispondete a tutte si.

Ora passamo all'installazione di php:
Codice:
apt-get install php5 php-pear php5-mysql php5-gd -y

Non vi rimane che riavviare Apache per rendere effettive tutte le modifiche al webserver:
Codice:
service apache2 restart

Installati i servizi possiamo passare alla configurazione di un Virtual Host con Apache:

Installate l'editor di testo Nano:
Codice:
apt-get install nano -y

Prima di iniziare a configurare dobbiamo creare le cartelle in cui verrano messi i file per il sitoweb:
Sotituite "esempio.com" con il dominio da voi registrato.
Codice:
mkdir /var/www/esempio.com/
mkdir /var/www/esempio.com/public_html
mkdir /var/www/esempio.com/logs
mkdir /var/www/esempio.com/backups

Per terminare la procedura dobbiamo garantire ad Apache i diritti per leggere/scrivere nelle cartelle appena create:
Codice:
chown www-data:www-data /var/www/esempio.com/public_html -R

Adesso abbiamo creato le cartelle dove inserire i file, abbiamo concesso diritti di lettura e scrittura ad apache, non ci rimane che configurare il virtual host.
Inannzitutto disabilitiamo il virtual host di default:
Codice:
a2dissite '*default'

Poi creiamone uno nuovo:
Sostituite sempre "esempio.com" con il vostro dominio:
Codice:
nano /etc/apache2/sites-available/esempio.com.conf
Aperto il file dovete scrivere la seguente configurazione:
Codice:
# domain: esempio.com
# public: /var/www/esempio.com/public_html
<VirtualHost *:80>
    ServerName www.esempio.com
    ServerAlias esempio.com
    DirectoryIndex index.html index.php
    DocumentRoot /var/www/esempio.com/public_html
    LogLevel warn
    ErrorLog /var/www/esempio.com/error.log
    CustomLog /var/www/esempio.com/log/access.log combined
</VirtualHost>
A questo punto usciamo con "Crtl+X", diamo l'ok per salvare con "y" e clicchiamo Invio.

Adesso non ci rimane che abilitare il nuovo virtual host creato:
Codice:
a2ensite esempio.com.conf

Riavviamo Apache:
Codice:
service apache reload

La configurazione per l'host virtuale è funzionante ora, per verificarlo creiamo un semplice file php nella cartella pubblica create prima (ovvero public_html):
Codice:
nano /var/www/esempio.com/public_html/index.php
Creato il file scriviamo:
Codice:
<?php
phpinfo();
?>
Salvate, come prima "Ctrl+X" poi "y" e poi Invio.

Adesso non ci rimane che andare sul browser e vedere se visualizziamo la pagna con le info della versione php. Basta andare su esempio.com oppure inserire l'ip del server. Se avete fatto tutto correttamente visualizzate una pagina con tutte le informazioni relative alla versione php installata.

Terminata la procedura della configurazione del virtual host, non ci rimane che creare un database mysql se ne avete bisogno.

Iniziamo lanciando il seguente comando:
Codice:
mysql -u root -p
Vi verrà chiesto di inserire la password d mysql impostata all'inizio.

Dopodichè lanciamo i seguenti comandi:
(sostituendo a piacimento "NOMEDATABASE", "NOMEUSER" e "PASSWORD")
Codice:
create database NOMEDATABASE;

create user NOMEUSER;

grant all on NOMEDATABASE.* to 'NOMEUSER' identified by 'PASSWORD';

flush privileges;

exit;

Bene, adesso il database è stato creato, e i dati inseriti potete usarli per configurare script che hanno necessità di un database mysql per poter funzionare.

Spero sia stato d'aiuto ai neofiti, lasciatemi un thanks se sono stato d'aiuto.
Se aggiungi anche come installare phpmyadmin fai una guida con il botto .. bravo molto chiaro!

AtomBT founder
 
Stato
Discussione chiusa ad ulteriori risposte.