abril 05, 2024

Configurar virtualhost en Apache y Debian 10

Hay veces que desarrollamos más de un proyecto web en la misma computadora y para eso necesitamos configurar nuestro equipo de tal modo que se puedan tener varios proyectos dentro de la misma carpeta, pero con diferente ruta de acceso desde el navegador y para eso yo realice lo siguiente.

Habilitar un archivo de configuración para el nuevo dominio.

Copiar el archivo ‘000-default.conf’ a otro (en este caso será blog.local) con el nombre blog.local.conf

 sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/blog.local.conf 

Editar el archivo ‘blog.local.conf`’ y dejarlo como a continuación se muestra (recuerda cambiar ‘user’ por tu usuario local).

<VirtualHost *:80>
 ServerName blog.local	
 ServerAlias blog.local	
 ServerAdmin webmaster@localhost	
 DocumentRoot /home/user/Server/blog	
 ErrorLog ${APACHE_LOG_DIR}/error.log	
 CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>       

Deshabilitar dominio Default.

 sudo a2dissite 000-default 

Habilitar el dominio creado.

 sudo a2ensite blog.local 

Y para que Apache2 reconozca los cambios anteriores debes reiniciar el servicio.

 sudo systemctl reload apache2 

Configurar la carpeta DocumentRoot

Para este momento el dominio ya está habilitado, solo falta decir a dónde debe de entrar cuando queramos ver el sitio. Para esto debemos editar el archivo de configuración de Apache2.

 sudo vim /etc/apache2/apache2.conf 

Y dejarlo similar a esto que tenemos a continuación. Nótese que yo comenté el Directorio default para poder mover todos mis proyectos en una carpeta ubicada dentro de los archivos del usuario local.

#<Directory /var/www/>
#	Options Indexes FollowSymLinks
#	AllowOverride None
#	Require all granted
#</Directory>

<Directory /home/user/Server/>	
   Options Indexes FollowSymLinks	
   AllowOverride None	
   Require all granted
</Directory>
         

Ahora debemos darle los permisos adecuados y cambiar al propietario del directorio nuevo.

 sudo chmod -R 777 /home/$USER/Server
 sudo chown -R www-data:www-data /home/$USER/Server
         

Agregar usuario local al grupo www-data

 sudo useradd -g www-data $USER 

Verificamos que se haya agregado el usuario.

 grep ^www-data /etc/group 

Y debemos ver algo como esto…

 www-data:x:33:miusuario 

Agregar el dominio en el archivo hosts

Aquí ya tienes configurado, habilitado y definido la ruta de acceso para tu domino, pero te falta decirle al Sistema Operativo que debe buscar primeramente el dominio en tu servidor local antes de buscarlo por la web cuando lo escribas como URL en tu browser.

Por eso, debes de editar del siguiente modo el archivo hosts…

 sudo vim /etc/hosts 

Y dejarlo similar a esto…

127.0.0.1	localhost127.0.1.1	MYDESKTOP
# The following lines are desirable for IPv6 capable
hosts::1     localhost 
ip6-localhost 
ip6-loopbackff02::1 
ip6-allnodesff02::2 
ip6-allrouters

127.0.0.1 blog.local         

Hacer prueba de servicio

Suponiendo que has llegado hasta aquí sin problema, entonces crea un archivo con un texto aleatorio dentro de la carpeta creada para este nuevo dominio y agrégale cualquier cosa para verla desde el navegador.

Hay veces que desarrollamos más de un proyecto web en la misma computadora y para eso necesitamos configurar nuestro equipo de tal modo que se puedan tener varios proyectos dentro de la misma carpeta, pero con diferente ruta de acceso desde el navegador y para eso yo realice lo siguiente.

Habilitar un archivo de configuración para el nuevo dominio

Copiar el archivo ‘000-default.conf’ a otro (en este caso será blog.local) con el nombre blog.local.conf

 sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/blog.local.conf 

Editar el archivo ‘blog.local.conf`’ y dejarlo como a continuación se muestra (recuerda cambiar ‘user’ por tu usuario local).

 < VirtualHost *:80>	
   ServerName blog.local	
   ServerAlias blog.local	
   ServerAdmin webmaster@localhost	
   DocumentRoot /home/user/Server/blog	
   ErrorLog ${APACHE_LOG_DIR}/error.log	
   CustomLog ${APACHE_LOG_DIR}/access.log combined
< /VirtualHost>
         

Deshabilitar dominio Default.

 sudo a2dissite 000-default 

Habilitar el dominio creado.

 sudo a2ensite blog.local 

Y para que Apache2 reconozca los cambios anteriores debes reiniciar el servicio.

 sudo systemctl reload apache2 

Configurar la carpeta DocumentRoot

Para este momento el dominio ya está habilitado, solo falta decir a dónde debe de entrar cuando queramos ver el sitio. Para esto debemos editar el archivo de configuración de Apache2.

 sudo vim /etc/apache2/apache2.conf 

Y dejarlo similar a esto que tenemos a continuación. Nótese que yo comenté el Directorio default para poder mover todos mis proyectos en una carpeta ubicada dentro de los archivos del usuario local.

#< Directory /var/www/>
#	Options Indexes FollowSymLinks
#	AllowOverride None
#	Require all granted
#< /Directory>

< Directory /home/user/Server/>	
   Options Indexes FollowSymLinks	
   AllowOverride None	
   Require all granted
< /Directory>        

Ahora debemos darle los permisos adecuados y cambiar al propietario del directorio nuevo.

 sudo chmod -R 777 /home/$USER/Server
         sudo chown -R www-data:www-data /home/$USER/Server
         

Agregar usuario local al grupo www-data

 sudo useradd -g www-data $USER 

Verificamos que se haya agregado el usuario.

 grep ^www-data /etc/group 

Y debemos ver algo como esto…

 www-data:x:33:miusuario 

Agregar el dominio en el archivo hosts

Aquí ya tienes configurado, habilitado y definido la ruta de acceso para tu domino, pero te falta decirle al Sistema Operativo que debe buscar primeramente el dominio en tu servidor local antes de buscarlo por la web cuando lo escribas como URL en tu browser.

Por eso, debes de editar del siguiente modo el archivo hosts…

 sudo vim /etc/hosts 

Y dejarlo similar a esto…

127.0.0.1	localhost127.0.1.1	MYDESKTOP
# The following lines are desirable for IPv6 capable
hosts::1     localhost 
ip6-localhost 
ip6-loopbackff02::1 
ip6-allnodesff02::2 
ip6-allrouters
127.0.0.1 blog.local

No hay comentarios.:

Publicar un comentario

"Todos los comentarios son moderados para evitar el spam. Tu comentario será publicado en breve. ¡Gracias por tu aportación!"