Creamos tres directorios donde más nos guste, en el ejemplo en /home/vagrant/www
Ahora creamos los ficheros de configuración de nginx, uno por cada site y el dominio que utilizaremos acceder a ellos sera:
- site-one.local
- site-two.local
- site-three.local
sudo ln -s /etc/nginx/sites-available/site.two.local.conf /etc/nginx/sites-enabled/
Dejo de ejemplo el fichero de configuración del site.one.local.conf, a los otros dos hay que cambiar el server_name por el nombre del site que corresponde y la ruta donde pone root.
# Default server configuration
#
server {
listen 80;
listen [::]:80;
root /home/vagrant/www/site-one;
# Add index.php to the list if you are using PHP
index index.html index.htm index.php;
server_name site-one.local;
location / {
# First attempt to serve request as file, then
# as directory, then fall back to displaying a 404.
try_files $uri $uri/ =404;
}
# Desde aqui hasta el final es lo que necesita para funcionar PHP
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.4-fpm.sock;
}
location ~ /\.ht {
deny all;
}
}
El directorio de nginx quedaría de la siguiente forma:
Y después de crear y enlazar los ficheros de configuración hay que reiniciar nginx
sudo /etc/init.d/nginx restart
Por último queda añadir en el fichero /etc/hosts de nuestra máquina las entradas a los tres sites que hemos creado, en mi caso tengo que poner la IP del servidor de pruebas donde los tengo, pero si lo teneis todo en local hay que poner 127.0.0.1Hecho esto, nos queda probarlos en el navegador:
Y ya esta configurado nginx con multiples webs.
Y esto es todo, feliz programming
Saludos
Alex
También puede interesarte:
Configurar Laravel Sail para utilizar un MySql externo existente |
||