Cargando



Sub-dominios en Laravel

En este tutorial veremos cómo podemos procesar los sub-dominios en una aplicación en Laravel.


sep 05 2014 05:27
Avanzado
sep 09 2014 13:34
Muchas aplicaciones modernas trabajan con esquemas personalizados por usuarios y una de las cosas que hace que se diferencien entre ellos es la URL, para ello se trabajan con los sub-dominios, es decir, colocar una palabra única seguida de un punto y el dominio de nuestra aplicación.

Esto puede parecer muy complejo a simple vista, sin embargo el motor de enrutamiento de Laravel hace que el trabajo no sea tan pesado, con una combinación entre configuración del servidor y nuestra aplicación podemos lograr procesar los sub-dominios de forma muy sencilla.

Configurar el servidor


El primer paso que debemos hacer es configurar nuestro servidor, en este caso vamos a mostrar la configuración del servidor Apache, pero podemos extrapolar esto a otros servidores como Nginx por ejemplo, utilizando los comandos adecuados.

Primero debemos asegurarnos que hemos hecho un A Record que apunte hacia nuestro servidor con un comodín como lo es *.nuestrodominio.com luego en el archivo de configuración de Apache podemos colocar el siguiente código donde le indicamos que guie hacia nuestra aplicación todo lo reciba bajo ese formato:

<VirtualHost *:80>
ServerName nuestrodominio.com
ServerAlias *.nuestrodominio.com
</VirtualHost>

Ya con ello podremos enviar la información necesaria a Laravel para procesar el sub-dominio.

Crear la ruta adecuada


Ahora debemos crear la ruta adecuada para que podamos obtener la información necesaria del sub-dominio, esta información luego la podremos utilizar para hacer consultas en Base de Datos de así requerirlo nuestra aplicación.

Para ello vamos primero a crear una ruta donde vamos a extraer cada elemento de la URL que estamos recibiendo, luego dentro de la misma podremos hacer operaciones para corroborar que podremos hacer ya con la partícula que hemos recibido, en este caso hacemos una verificación contra la base de datos para mostrar una información, veamos el ejemplo:

laravel_utilizar_subdominio.jpg


Al visitar nuestra aplicación utilizando un sub-dominio, este se va a validar con la base de datos y de existir en la misma mostrará el contenido del registro.

[panelprimary='']Utilizar rutas agrupadas para verificar el sub-dominio[/panelprimary]
También podemos aplicar la utilización de sub-dominios para varias rutas, con lo que no tendremos que preocuparnos por hacer otro tipo de manipulación más compleja, para ello creamos una ruta agrupada, dentro de esta vamos a construir la estructura de la URL que esperamos y luego dentro podemos hacer el llamado a todas las rutas necesarias, en el siguiente ejemplo mostramos algo que funcionará de acuerdo a lo descrito:



[panelprimary='Procedimiento']Vemos que es bastante sencillo, simplemente dentro de la ruta principal creamos el grupo, capturamos el sub-dominio, luego dentro de la función de cierre creamos las rutas necesarias y tomamos el sub-dominio para poder hacer los procesamientos necesarios.[/panelprimary]

Con esto finalizamos este tutorial, hemos logrado de forma muy sencilla algo que de otra forma nos hubiese tocado construir con muchas validaciones y reglas de expresiones regulares más complejas, esta ventaja de Laravel nos permite lograr aplicaciones como por ejemplo tiendas en línea donde cada cliente puede tener un perfil único y gracias al sub-dominio podemos inclusive tomar su nombre y cambiar partes de la aplicación a conveniencia.

¿Te ayudó este Tutorial?


Sin comentarios, sé el primero!

No esperes más y entra en Solvetic
Deja tus comentarios y aprovecha las ventajas de la cuenta de usuario ¡Únete!

X