Apache2 (o Apache HTTP Server) è un server web gratuito e open source utilizzato per ospitare siti web. È uno dei server web più diffusi al mondo e può essere installato su diversi sistemi operativi come Linux, Windows, macOS e altri.
Apache2 supporta molti protocolli tra cui HTTP, HTTPS, FTP e altri e può essere configurato per gestire contenuti dinamici come PHP, Python, Perl e altri. Apache2 dispone inoltre di numerosi moduli ed estensioni che consentono di personalizzarlo in base alle diverse attività ed esigenze.
Come si installa?
Vediamo i comandi di installazione di Apache2:
apt-get install apache2
Per centOS, utilizzare il comando "yum install httpd" (il secondo nome di Apache2).
Ora passiamo al processo di configurazione del server.
Come configurare correttamente Apache2
Andate su sFTP a /etc/apache2/sites-available e create un file nome_server.conf (il nome può essere qualsiasi cosa) contenente il seguente testo con i vostri dati:
<VirtualHost *:80>
ServerName # Указать домен сайта
ServerAdmin admin # Ваш email
DocumentRoot /var/www/html # Путь до папки с сайтом
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Per avviare il sito, inserire il comando:
a2ensite server_name.conf
Per disabilitare il sito, usare il comando seguente:
a2dissite server_name.conf //укажите имя файла вашего сайта
Per riavviare il sito, usare il comando seguente:
service apache2 reload
Collegare PHP ad Apache2
Per utilizzare i file php, installiamo un pacchetto speciale:
apt-get install libapache2-mod-php -y
Riavviare Apache2:
service apache2 reload
Abilitazione del rewrite (riscrittura dei file)
Senza questa impostazione, una parte significativa dei siti CMS potrebbe non funzionare.
Scriviamo le impostazioni del file .htaccess:
a2enmod rewrite
Riavviare Apache2:
service apache2 reload
Abilitazione di SSL (protocollo di crittografia).
Si tratta di un elemento non essenziale per aumentare la credibilità del sito.
Abilitiamo il modulo di crittografia SSL:
a2enmod ssl
Andare via sFTP a /etc/apache2/sites-available e creare una nuova configurazione site_name-ssl.conf:
<VirtualHost *:443>
ServerName # Указать домен сайта
ServerAdmin admin # Ваш email
DocumentRoot /var/www/html # Путь до папки с сайтом
SSLEngine on
SSLCertificateFile /path/to/your_domain_name.pem # Путь до публичного сертификата
SSLCertificateKeyFile /path/to/your_private.key # Путь до приватного сертификата
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Riavviare Apache2:
service apache2 reload
Come si può vedere, niente di complicato.

