DEV Community

Rodrigo Garcia Trejo
Rodrigo Garcia Trejo

Posted on • Updated on

Como subir un proyecto de laravel con nginx

Hola a todos

En este post quiero compartirles como le hice para subir mi proyecto hecho en Laravel con un servidor nginx

Nginx

Primero modifique mi configuración de mi servidor nginx de la siguiente manera

    server {
        client_max_body_size 604M;
        listen 80;
        server_name localhost;
        proxy_read_timeout 3000;
        proxy_connect_timeout 3000;
        proxy_send_timeout 3000;

    #index index.php index.html index.htm;
   index index.php index.html index.htm;


        location / {
            root html;
        try_files $uri $uri/ /PruebaLaravel/public/index.php?$is_args$args;

        }

        location ~ \.php$ {
            root html;
            fastcgi_pass 127.0.0.1:9000;
            fastcgi_index index.php;
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            include fastcgi_params;

        }


    }

Enter fullscreen mode Exit fullscreen mode

Como notaran en la sección location
tengo el siguiente código

try_files $uri $uri/ /PruebaLaravel/public/index.php?$is_args$args;

Este código sirve para que cuando entren a PruebaLaravel public les cargue las rutas correctamente.

Laravel

Para la sección de laravel lo unico que hice fue subir mi proyecto y configurar el archivo .env que por defecto al momento de subirlo (con git) el archivo cuenta con un .gitignore el cual elimina vendor y el archivo .env

Pór lo que primero debemos de ejecutar el comando

composer install
Enter fullscreen mode Exit fullscreen mode

Posteriormente debemos de editar el archivo .env.example lo único que hice fue con el comando cp ejecutar lo siguiente

cp .env.example .env
Enter fullscreen mode Exit fullscreen mode

Luego de ejecutar ese comando que lo que hace es crear el archivo .env con la configuración del .env.example

posteriormente debemos de crear el apikey, para esto debemos de ejecutar el comando

php artisan key:generate
Enter fullscreen mode Exit fullscreen mode

Que lo que hace básicamente es generarnos una clave en base64 y colocarla en el archivo .env automaticamente.

debe quedar nuestro archivo .env de la siguiente manera

APP_KEY=base64:nwS6IQobORgUqweqweqw1UVPMox8YBmuaffm/3ZvCOdasdasd
Enter fullscreen mode Exit fullscreen mode

nginx

Les recomiendo proteger su configuracion de .env con nginx de la siguiente manera

    location = /PruebaLaravel/.env{
        autoindex off;
        deny all;
        return 404;
    }
Enter fullscreen mode Exit fullscreen mode

P.D. No olviden asignar los permisos necesarios para acceder a la carpeta.

Top comments (0)