GNU/Linux >> Linux Esercitazione >  >> Cent OS

Come configurare gli host virtuali Apache su CentOS 7

Apache Virtual Hosts consente l'esecuzione di più siti Web su un server Web. Con gli host virtuali, puoi specificare la radice del documento del sito (la directory che contiene i file del sito Web), creare una politica di sicurezza separata per ogni sito, utilizzare certificati SSL diversi per ogni sito e molto altro.

In questo tutorial, forniremo istruzioni dettagliate su come configurare gli host virtuali Apache su un server CentOS 7.

Prerequisiti #

Assicurati di soddisfare i seguenti prerequisiti prima di continuare con questo tutorial:

  • Hai un nome di dominio che punta all'IP del tuo server pubblico. Useremo example.com .
  • Avete installato Apache seguendo Come installare Apache su CentOS 7.
  • Sei loggato come utente con privilegi sudo.

Creazione della struttura della directory #

DocumentRoot è la directory in cui vengono archiviati e serviti i file del sito Web per un nome di dominio in risposta alle richieste. Puoi impostare la radice del documento in qualsiasi posizione desideri, in questo esempio utilizzeremo la seguente struttura di directory:

/var/www/
├── example.com
│   └── public_html
├── example-1.com
│   └── public_html
├── example-2.com
│   └── public_html

Stiamo creando una directory separata per ogni dominio che vogliamo ospitare sul nostro server all'interno di /var/www directory. All'interno di ciascuna di queste directory, creeremo un public_html directory che memorizzerà i file del sito Web del dominio.

Crea la directory principale per il dominio example.com usando il comando mkdir:

sudo mkdir -p /var/www/example.com/public_html

A scopo di test creeremo un index.html file all'interno della directory principale del documento di dominio. Apri il tuo editor e crea un file HTML con i seguenti contenuti:

/var/www/example.com/public_html/index.html
<!DOCTYPE html>
<html lang="en" dir="ltr">
  <head>
    <meta charset="utf-8">
    <title>Welcome to example.com</title>
  </head>
  <body>
    <h1>Success! example.com home page!</h1>
  </body>
</html>

Tutti i comandi vengono eseguiti come utente sudo, quindi i file e le directory appena creati sono di proprietà dell'utente root. Per assicurarti che non ci siano problemi di autorizzazione, cambia la proprietà della directory principale del documento di dominio in apache utente :

sudo chown -R apache: /var/www/example.com

Creazione del file host virtuale #

Ci sono alcuni modi per configurare un host virtuale. È possibile aggiungere tutte le direttive dell'host virtuale in un unico file o creare un nuovo file di configurazione per ciascuna direttiva dell'host virtuale. Personalmente, preferisco il secondo approccio perché è più manutenibile.

Per impostazione predefinita, Apache è configurato per caricare tutti i file di configurazione che terminano con .conf dal /etc/httpd/conf.d/ directory.

Per creare un host virtuale per un sito Web specifico, apri il tuo editor preferito e crea il seguente file di configurazione di base dell'host virtuale:

/etc/httpd/conf.d/example.com.conf
<VirtualHost *:80>
    ServerName example.com
    ServerAlias www.example.com
    ServerAdmin [email protected]
    DocumentRoot /var/www/example.com/public_html

    <Directory /var/www/example.com/public_html>
        Options -Indexes +FollowSymLinks
        AllowOverride All
    </Directory>

    ErrorLog /var/log/httpd/example.com-error.log
    CustomLog /var/log/httpd/example.com-access.log combined
</VirtualHost>
  • ServerName :il dominio che dovrebbe corrispondere a questa configurazione dell'host virtuale. Questo dovrebbe essere il tuo nome di dominio.
  • ServerAlias :anche tutti gli altri domini che dovrebbero corrispondere a questo host virtuale, come www sottodominio.
  • DocumentRoot :la directory da cui Apache servirà i file di dominio.
  • Options :questa direttiva controlla quali funzioni del server sono disponibili in una directory specifica.
    • -Indexes :impedisce gli elenchi di directory.
    • FollowSymLinks :questa opzione dice al tuo server web di seguire i link simbolici.
  • AllowOverride :Specifica quali direttive dichiarate nel .htaccess può sovrascrivere le direttive di configurazione.
  • ErrorLog , CustomLog :specifica la posizione per i file di registro.

Modifica il file in base alle tue esigenze e salvalo.

È importante che il nome del file di configurazione termini con .conf . Puoi nominare il file di configurazione come preferisci, ma la procedura migliore consiste nell'usare il nome di dominio come nome del file di configurazione dell'host virtuale.

Verifica la sintassi del file di configurazione con:

sudo apachectl configtest

Se non ci sono errori vedrai il seguente output:

Syntax OK

Per attivare un host virtuale appena creato, riavvia il servizio Apache con:

sudo systemctl restart httpd

Verifica che tutto funzioni come previsto, aprendo http://example.com :


Cent OS
  1. Come configurare gli host virtuali Apache su Ubuntu 18.04

  2. Come configurare gli host virtuali Apache su Ubuntu 20.04

  3. Come configurare gli host virtuali Apache su CentOS

  4. Configura gli host virtuali Apache su CentOS 7

  5. Configura host virtuali su CentOS

Come configurare WebDAV utilizzando Apache su CentOS 7

Come configurare l'host virtuale Apache su CentOS 8

Come installare Apache con Virtual Host su CentOS 8

Come configurare gli host virtuali Apache su Debian 11

Come configurare gli host virtuali Apache su Ubuntu 18.04

Come configurare gli host virtuali Apache su Ubuntu 20.04