Laravel Nginx · 4 min read · Jan 23, 2026
Instalando Laravel en Ubuntu para Nginx
Ya hemos hablado sobre la instalación de Laravel para servidores Ubuntu basados en Apache en nuestro último tutorial. Este tutorial te mostrará cómo instalar el framework PHP Laravel en una instalación de servidor Nginx.
Pre-Requisitos
Como siempre, debes asegurarte de que el servidor esté bien actualizado antes de proceder.
sudo apt-get update
sudo apt-get upgradeEste tutorial se basa en la suposición de que ya tienes un servidor basado en Ubuntu configurado. También asegúrate de tener Git instalado. Si no, puedes seguir nuestra guía para hacerlo.
Instalando Nginx
Instalar el servidor Nginx es simple y directo. Así que hagámoslo.
sudo apt-get install nginxInstalando PHP-FPM
PHP no funciona con Nginx de la misma manera que lo hace con Apache. Para Nginx, necesitas la implementación FastCGI de PHP llamada PHP-FPM (PHP-FastCGI Process Manager). Instalemos PHP entonces. También necesitamos la extensión Mcrypt de PHP para que Laravel funcione.
sudo apt-get install php5-fpm php5-cli php5-mcryptConfigurando Nginx para Laravel
Antes de proceder, hagamos una configuración básica del servidor Nginx que hemos instalado. Primero necesitamos crear el directorio donde se instalará Laravel.
sudo mkdir -p /var/www/html/laravelHecho esto, ahora tenemos que decirle a Nginx que aquí es donde funcionará nuestro sitio. Para eso necesitamos crear una entrada de virtualhost en Nginx. Nginx almacena la configuración predeterminada en un archivo llamado default en /etc/nginx/sites-available/default. Vamos a copiarlo y crear nuestra propia versión del archivo.
sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/laravelVamos a editar el archivo de configuración
sudo nano /etc/nginx/sites-available/laravelVerás algo como
server {
listen 80 default_server;
listen [::]:80 default_server ipv6only=on;
root /usr/share/nginx/html;
index index.html index.htm;
server_name localhost;
location / {
try_files $uri $uri/ =404;
}
}He eliminado los comentarios por razones de legibilidad. Necesitarás cambiar la ubicación raíz que sería /var/www/html/laravel/public en nuestro caso. También necesitas cambiar la variable server_name ya sea al nombre de dominio que estarías usando o a la dirección IP de tu servidor.
Edita el archivo para que se vea como lo siguiente
server {
listen 80 default_server;
listen [::]:80 default_server ipv6only=on;
root /var/www/html/laravel/public;
index index.php index.html index.htm;
server_name server_domain_or_IP;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
try_files $uri /index.php =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}Guarda el archivo después de editar. Ahora necesitamos habilitar este archivo de configuración. Hasta ahora, solo el perfil predeterminado está activo. Para hacerlo, necesitamos crear un enlace simbólico al archivo laravel en el directorio /etc/nginx/sites-enabled. También necesitaríamos deshabilitar el perfil predeterminado para que no interfiera con nuestra instalación de laravel.
sudo ln -s /etc/nginx/sites-available/laravel /etc/nginx/sites-enabled/
sudo rm /etc/nginx/sites-enabled/defaultNuestra configuración del servidor Nginx está completa. El siguiente paso es configurar PHP-FPM.
Configurar PHP-FPM
Este paso es simple y requiere que cambiemos una variable en el archivo de configuración de PHP. Es hora de abrir php.ini
sudo nano /etc/php5/fpm/php.iniBusca el siguiente texto en él
;cgi.fix_pathinfo=1Descomenta la variable eliminando el ; del frente y cambia su valor a 1 para que se vea como
cgi.fix_pathinfo=0Esto le dice a PHP que no ejecute un script con un nombre similar si el original no se encuentra, lo cual es importante desde el punto de vista de la seguridad.
Por último, también necesitamos habilitar la extensión mcrypt que instalamos anteriormente.
sudo php5enmod mcryptEso es todo. Ahora solo reinicia el servicio PHP-FPM para cargar los cambios.
sudo service restart php5-fpmInstalando Composer
Composer es una herramienta de gestión de dependencias que nos permite instalar varios frameworks y bibliotecas PHP a través de un solo comando. Se encarga de todos los otros paquetes y dependencias que tendrías que haber instalado por separado para instalar un framework si optas por la ruta manual. Puede ahorrar mucho tiempo y molestias. Vamos a instalar Laravel usando Composer.
Descarga Composer. Asegúrate de estar en tu directorio personal primero.
curl -sS https://getcomposer.org/installer | phpEsto descarga el archivo composer.phar en tu directorio personal. Ahora, si lo deseas, puedes ejecutarlo desde aquí usando algo como php composer.phar [comando], pero como preferimos ejecutar composer globalmente, necesitamos moverlo a una ubicación más apropiada para que podamos ejecutarlo fácilmente.
sudo mv composer.phar /usr/local/bin/composerAhora puedes ejecutarlo directamente llamando a composer desde cualquier lugar.
Instalando Laravel
Ahora que hemos instalado composer, necesitamos instalar Laravel. Instálalo con el siguiente comando.
sudo composer create-project laravel/laravel /var/www/html/laravel --prefer-distEsto descarga e instala la última versión de Laravel (5.2 actualmente) en tu servidor.
Antes de terminar el tutorial, necesitamos dar permisos adecuados a algunos directorios.
sudo chgrp -R www-data /var/www/html/laravel
sudo chmod -R 775 /var/www/html/laravel/storageConclusión
Eso es todo. Tu instalación de Laravel está completa. Ahora lanza http://servername o http://serverip en tu navegador. Deberías ver la siguiente pantalla, si todo ha salido bien.

Recibe nuevas publicaciones en tu bandeja de entrada.
No spam. Cancela la suscripción en cualquier momento.