Diferencia entre revisiones de «Configuración de Virtual Host en Apache HTTP 2.4»
| Línea 5: | Línea 5: | ||
* basados en nomes diferentes: cunha sola dirección IP están funcionando sitios web con diferentes nomes de dominio | * basados en nomes diferentes: cunha sola dirección IP están funcionando sitios web con diferentes nomes de dominio | ||
| − | = Virtual host | + | = Virtual host baseados en nome = |
| − | + | Esta sería unha configuración posible, que é a que atopamos como sitio por defecto: | |
| + | /etc/apache2/sites-available/000-default.conf | ||
| + | <pre> | ||
| + | <VirtualHost *:80> | ||
| + | #ServerName www.example.com | ||
| + | ServerAdmin webmaster@localhost | ||
| + | DocumentRoot /var/www/html | ||
| + | ErrorLog ${APACHE_LOG_DIR}/error.log | ||
| + | CustomLog ${APACHE_LOG_DIR}/access.log combined | ||
| + | </VirtualHost> | ||
| + | </pre> | ||
| + | |||
| + | == Tarefa == | ||
| + | Configurar dous virtual host as webs www.probadevh1.com e www.probadevh2.com | ||
| + | |||
| + | == Solución == | ||
| + | Cada sitio web terá nombres distintos, pero compartirán o mesmo enderezo IP e o mesmo porto (80). | ||
| + | |||
| + | === Creación dos ficheiros de configuración === | ||
| + | Crearemos os ficheiros de configuración para os dous virtual host partindo do ficheiro do sitio por defecto: | ||
| + | <pre> | ||
| + | cd /etc/apache2/sites-available | ||
| + | cp 000-default.conf probadevh1.conf | ||
| + | cp 000-default.conf probadevh2.conf | ||
| + | </pre> | ||
| + | |||
| + | === Modificación dos ficheiros de configuración === | ||
| + | Modificamos nos ficheros de configuración as seguintes directivas: | ||
| + | DocumentRoot | ||
| + | ServerName | ||
| + | ErrorLog | ||
| + | CustomLog | ||
| + | |||
| + | O exemplo resultante de probadevh1.conf podería ser este: | ||
| + | <pre> | ||
| + | <VirtualHost *:80> | ||
| + | ServerName www.probadevh1.com | ||
| + | ServerAdmin joselv@edu.xunta | ||
| + | DocumentRoot /var/www/html/probadevh1 | ||
| + | ErrorLog ${APACHE_LOG_DIR}/error_probadevh1.log | ||
| + | CustomLog ${APACHE_LOG_DIR}/access_probadevh1.log combined | ||
| + | </VirtualHost> | ||
| + | </pre> | ||
| + | |||
| + | === Activación da configuración === | ||
| + | a2ensite probadevh1 | ||
| + | a2ensite probadevh2 | ||
| + | |||
| + | === Creación dos DocumentRoot === | ||
| + | mkdir /var/www/probadevh1 | ||
| + | mkdir /var/www/probadevh2 | ||
| + | |||
| + | === Cambio de propietarios das rutas === | ||
| + | Damos propietarios axeitados as rutas: | ||
| + | # chown -R www-data:www-data /var/www/probadevh1 | ||
| + | # chown -R www-data:www-data /var/www/probadevh2 | ||
| + | |||
| + | === Creación index.html === | ||
| + | sudo pico /var/www/probadevh1/index.html | ||
| + | sudo pico /var/www/probadevh2/index.html | ||
| + | |||
| + | O contido podemos poñer calquera de proba, pero que sexa diferente para comprobar que accedemos correctamente a cada virtualhost. | ||
| + | |||
| + | === Comprobamos o funcionamento === | ||
| + | No navegador, accedemos a: | ||
| + | www.probadevh1.com | ||
| + | www.probadevh2.com | ||
| + | |||
| + | Os contidos son os que corresponden a cada ficheiro index.html | ||
| + | |||
| + | === Troubleshooting === | ||
| + | Para o funcionamento dos virtual host é necesario que esté instalado e configurado un servidor DNS. | ||
| + | Outra alternativa é configurar manualmente a resolución modificando o ficheiro: | ||
| + | /etc/hosts | ||
= Virtual host basados en ip = | = Virtual host basados en ip = | ||
Revisión del 01:10 12 nov 2020
Sumario
Introducción
Hosting Virtual refírese a posibilidade de facer funcionar máis dun sitio web (por exemplo www.paxina1.com e www.paxina2.com) nunha sola máquina. Os sitios web virtuales poden estar:
- basados en enderezos IP: cada sitio web ten un enderezo IP diferente
- basados en nomes diferentes: cunha sola dirección IP están funcionando sitios web con diferentes nomes de dominio
Virtual host baseados en nome
Esta sería unha configuración posible, que é a que atopamos como sitio por defecto:
/etc/apache2/sites-available/000-default.conf
<VirtualHost *:80>
#ServerName www.example.com
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Tarefa
Configurar dous virtual host as webs www.probadevh1.com e www.probadevh2.com
Solución
Cada sitio web terá nombres distintos, pero compartirán o mesmo enderezo IP e o mesmo porto (80).
Creación dos ficheiros de configuración
Crearemos os ficheiros de configuración para os dous virtual host partindo do ficheiro do sitio por defecto:
cd /etc/apache2/sites-available cp 000-default.conf probadevh1.conf cp 000-default.conf probadevh2.conf
Modificación dos ficheiros de configuración
Modificamos nos ficheros de configuración as seguintes directivas:
DocumentRoot ServerName ErrorLog CustomLog
O exemplo resultante de probadevh1.conf podería ser este:
<VirtualHost *:80>
ServerName www.probadevh1.com
ServerAdmin joselv@edu.xunta
DocumentRoot /var/www/html/probadevh1
ErrorLog ${APACHE_LOG_DIR}/error_probadevh1.log
CustomLog ${APACHE_LOG_DIR}/access_probadevh1.log combined
</VirtualHost>
Activación da configuración
a2ensite probadevh1 a2ensite probadevh2
Creación dos DocumentRoot
mkdir /var/www/probadevh1 mkdir /var/www/probadevh2
Cambio de propietarios das rutas
Damos propietarios axeitados as rutas:
# chown -R www-data:www-data /var/www/probadevh1 # chown -R www-data:www-data /var/www/probadevh2
Creación index.html
sudo pico /var/www/probadevh1/index.html sudo pico /var/www/probadevh2/index.html
O contido podemos poñer calquera de proba, pero que sexa diferente para comprobar que accedemos correctamente a cada virtualhost.
Comprobamos o funcionamento
No navegador, accedemos a:
www.probadevh1.com www.probadevh2.com
Os contidos son os que corresponden a cada ficheiro index.html
Troubleshooting
Para o funcionamento dos virtual host é necesario que esté instalado e configurado un servidor DNS. Outra alternativa é configurar manualmente a resolución modificando o ficheiro:
/etc/hosts
Virtual host basados en ip
Virtual host basados en ip y puerto
Referencias
- https://www.digitalocean.com/community/tutorials/how-to-configure-the-apache-web-server-on-an-ubuntu-or-debian-vps#exploring-the-default-virtual-host-file
- https://www.digitalocean.com/community/tutorials/how-to-set-up-apache-virtual-hosts-on-ubuntu-18-04-quickstart-es