Pillole Apache: Virtualhost su localhost

Spread the love

Problema: definisco un virtualhost su un nuovo file di configurazione sotto la directory:

/etc/apache2/sites-available/newsite.conf

che contiene queste informazioni

<VirtualHost *:80>
        ProxyPreserveHost On
        ProxyPass /beta http://betaingegneria.it
        ProxyPassReverse /beta http://betaingegneria.it
        ServerName localhost
        ErrorLog ${APACHE_LOG_DIR}/error_newsite.log
        CustomLog ${APACHE_LOG_DIR}/access_newsite.log combined
</VirtualHost>

Lo abilito:

# a2ensite newsite
Enabling site newsite.
To activate the new configuration, you need to run:
systemctl reload apache2

Questo comando crea un link simbolico nella directory

/etc/apache2/sites-enabled/newsite.conf

Faccio ricaricare la configurazione ad Apache:

# systemctl reload apache2

Il risultato è deludente: puntando a http://localhost/beta ho sempre un errore 404 anziché vedere sul browser il sito betaingegneria.it

Però, se invece di creare un nuovo file scrivo la configurazione del proxy dentro al file 000-default.conf, rileggendo (reload) la configurazione nel browser, all’indirizzo http://localhost/beta vedo il mio sito. Questo era l’effetto che volevo ma creando un nuovo file di configurazione separato.

Per non farvela lunga (io invece un po’ di tempo ce l’ho perso) il problema è il “conflitto” tra il file 000.default.conf e il nuovo newsite.conf: infatti in questa directory ci dovrebbe esser un solo file per ogni nome di dominio; il file che avevo creato usava come ServerName il nome localhost, esattamente quello di default a cui si riferisce Apache quando ha esaurito i nomi di dominio definiti, gestito in 000.default.conf.

Quindi o disabilito 000-default.conf e scrivo la nuova configurazione nel nuovo file, oppure viceversa.

Disabilitare 000-default.conf a lungo andare non è la scelta più oculata perché in caso dismettessi il nuovo sito, se non mi ricordo questa cosa, lascio Apache senza un sito di default per localhost.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.