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

Configura gli host virtuali Apache su CentOS 7

Con il server Web Apache, puoi fornire contenuti Web su Internet. Fondamentalmente, quando si utilizza il server Web Apache, è possibile utilizzare host virtuali per ospitare più di un dominio in un singolo server. Apache suddividerà le sue funzionalità e componenti in singole unità in modo da poter personalizzare in modo indipendente. L'unità di base che descrive un singolo sito o dominio è chiamata host virtuale.

Qui a LinuxAPT, come parte dei nostri servizi di gestione del server, aiutiamo regolarmente i nostri clienti a eseguire query Apache correlate.

In questo contesto, esamineremo come configurare gli host virtuali Apache su un server CentOS 7.


Come creare host virtuali Apache su CentOS?

Prima di procedere con questa procedura, è necessario assicurarsi che siano soddisfatti i seguenti prerequisiti:

  • Un server CentOS 7 con un utente non root con privilegi sudo.
  • Apache deve essere installato e configurato, come menzionato in Come installare Apache su CentOS 7 Server.
  • Un nome di dominio dovrebbe puntare all'indirizzo IP del tuo server.


1. Crea la struttura della directory

Per iniziare, creeremo una directory in cui i file del sito Web per un dominio memorizzeranno e serviranno le risposte ai visitatori. In genere, si chiamava DocumentRoot. È possibile impostare la radice del documento in qualsiasi posizione, ma è consigliabile impostare la struttura della directory. Generalmente in tutto /var/www:

/var/www/
 ├── example1.com
 │   └── public_html
 ├── linuxapt.com
 │   └── public_html

Qui, dobbiamo creare una directory separata all'interno della directory /var/www per ogni dominio che vogliamo ospitare sul nostro server:

$ sudo mkdir -p /var/www/example1.com/public_html

Per verificarlo, creeremo un file index.html all'interno della directory principale del documento di dominio. Questa pagina verrà mostrata per impostazione predefinita quando i visitatori visiteranno il tuo sito.

Per creare un nuovo file index.html utilizzando il tuo editor di testo preferito, esegui il comando:

$ sudo vi /var/www/example1.com/public_html/index.html

Quindi, aggiungi le righe seguenti:

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>Welcome!!</title>
  </head>
  <body>
    <h1>Success! example1.com set up completed!</h1>
  </body>
</html>

Poiché tutti i comandi vengono eseguiti come utente sudo, i file e le directory appena creati sono di proprietà dell'utente root. Cambieremo la proprietà delle directory root dei documenti per evitare problemi di autorizzazione per il nostro utente normale. Pertanto, l'utente normale può modificare i file nelle nostre directory web senza problemi:

$ sudo chown -R apache: /var/www/example1.com


2. Crea file host virtuali

Esistono diversi modi per configurare un host virtuale. È possibile creare file separati per ciascuna direttiva host virtuale oppure aggiungere tutte le direttive host virtuale in un unico file. Si consiglia di creare file separati per ogni dominio perché è gestibile.

Su CentOS, Apache caricherà tutti i file .conf dalla directory /etc/httpd/conf.d/ a causa della sua configurazione predefinita. Quindi ora creeremo un host virtuale separato.

Ora, crea un nuovo file usando l'editor di testo che preferisci eseguendo:

$ sudo vi /etc/httpd/conf.d/example1.com.conf
<VirtualHost *:80>
    ServerName example1.com
    ServerAlias www.example1.com
    DocumentRoot /var/www/example1.com/public_html
    <Directory /var/www/example1.com/public_html>
        Options -Indexes +FollowSymLinks
        AllowOverride All
    </Directory>
    ErrorLog /var/log/httpd/example1.com-error.log
    CustomLog /var/log/httpd/example1.com-access.log combined
</VirtualHost>

Nota quanto segue:

  • Nomeserver:dovrebbe essere il tuo nome di dominio e corrispondere alla configurazione dell'host virtuale.
  • ServerAlias:tutti gli altri domini o sottodomini che dovrebbero corrispondere anche a questo host virtuale, in genere il sottodominio www.
  • DocumentRoot:Percorso della directory host virtuale da cui Apache servirà i file di dominio.
  • Opzioni:questa direttiva controlla quali funzionalità del server sono disponibili in una directory specifica.
  • -Indici:impedirà gli elenchi di directory.
  • SeguiSymLinks:Apache seguirà i collegamenti simbolici se questa opzione è abilitata.
  • AllowOverride:specifica quali direttive dichiarate nel file .htaccess possono sovrascrivere le direttive di configurazione.
  • ErrorLog, CustomLog:specifica la posizione dei file di registro.


Qui puoi assegnare qualsiasi nome al tuo file di configurazione, ma ti consigliamo di assegnare un nome file uguale al nome di dominio.

Ora controlla la sintassi per tipo:

$ sudo apachectl configtest

Vedrai un output come questo:

Output
Syntax OK

Devi riavviare il servizio apache2 per rendere attivi gli host virtuali appena creati :

$ sudo systemctl restart httpd

Infine, puoi verificare accedendo al tuo dominio (http://example1.com) su un browser web e vedrai qualcosa del genere:

Success! example1.com set up completed!



Cent OS
  1. Come configurare gli host virtuali Apache su CentOS

  2. Installa il server web Apache CentOS 6 / RHEL 6

  3. Configurare gli host virtuali Apache su Ubuntu 18.04 - Processo passo dopo passo?

  4. Come configurare OpenSSH su CentOS 7

  5. Configura host virtuali su CentOS

Come configurare gli host virtuali Apache in Ubuntu 18.04 LTS

Installa Apache OpenOffice su CentOS 8

Come configurare gli host virtuali Apache su Rocky Linux

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 Ubuntu 18.04