Como configurar seu NGINX e PHP7 para subir uma aplicacao feita em laravel
Tags: devops, infraestrutura, ubuntu, laravel
Published: 2022-10-01 05:24:19

---
title: Como configurar seu NGINX e PHP7 para subir uma aplicacao feita em laravel
published: true
date: 2022-05-20 00:38:00 UTC
tags: DevOPS,Infraestrutura,Ubuntu,Laravel
canonical_url: https://luisjustin.com.br/2022/05/19/como-configurar-seu-nginx-e-php7-para-subir-uma-aplicacao-feita-em-laravel/
---

Prazer me chamo Luis Justin, esses dias me deparei com a necessidade de configurar o Nginx para rodar o laravel, então comecei arduamente a pesquisar na internet a melhor forma de fazer isso, então agora que sei como faz e já faço isso direto na empresa que eu trabalho resolvi passar esse conhecimento a frente.

**Lembrando não sou nenhum expert no assunto, então pode ter algo que eu tenha esquecido de falar dai peço que me avisem se faltou algo que corrijo o tutorial.**

Primeiramente temos que avaliar a questão de qual sistema operacional está utilizando, pois cada sistema operacional tem uma maneira de configura. Quando digo que tem uma maneira para cada não me refiro que o nginx muda seu funcionamento em cada SO, mas muda a organização das pastas.

Eu aqui irei utilizar Ubuntu 20.04, mas lembrando os mesmo passos podem ser reproduzidos em qualquer sistema operacional basta, analisar como é a organização de pasta do seu SO.

Lembrando que isso não se aplica somente para o Laravel essa configuração você pode usar para rodar qualquer sistema em PHP, mas nesse tutorial será focado para Laravel 8.0.

# 1. Instalando Nginx

No Ubuntu 20.04 instalar o nginx é uma tarefa relativamente simples usando o gerenciador de pacotes basta digitar o seguinte comando:

```
sudo apt install nginx
```

Após ter concluído a instalação você precisa iniciar seu servidor nginx com o seguinte comando:

```
sudo systemctl start nginx
```

# 2. Instalando PHP-FPM

Para instalar o PHP-FPM em sua ultima versão só é preciso digitar o seguinte comando:

```
sudo apt install php-fpm
```

Após isso irá perceber que o php-fpm já está instalado e rodando.

# 3. Instalando Dependências que Laravel precisa para funcionar

Para instalar as dependencias necessárias basta você copiar e colar o seguinte comando no seu terminal:

```
sudo apt install php-mysql php-pdo php-mbstring php-xml php-bcmath php-zip
```

# 4. Configurando o Nginx para receber o Laravel

Primeiramente você precisa abrir o arquivo de configuração do nginx o famoso arquivo chamado “default”

```
nano /etc/nginx/sites-available/default
```

Irei ensinar 2 formas de criar essa configuração, porque duas formas ? Pelo fato que você pode utilizar ela tanto quando for para acessar por IP do servidor como quando você for configurar vários domínios com várias aplicações iguais ou distintas em laravel.Após isso você vai ver a seguinte tela:

![](https://miro.medium.com/max/700/1*fZCEItyj-fRYZkeeeeutYw.png)
_Print do servidor de teste_

agora iremos modifcar o script para ficar da seguinte forma:

```
server {
        listen 80;
        root /var/www/html/public;
        index index.php index.html index.htm index.nginx-debian.html;
        server_name seusite.com.br; charset utf-8; location / {
                try_files $uri $uri/ /index.php?$query_string;
        } location = /favicon.ico { access_log off; log_not_found off; }
        location = /robots.txt { access_log off; log_not_found off; } error_page 404 /index.php; location ~ \.php$ {
                include snippets/fastcgi-php.conf;
                fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
                fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
        } location ~ /\.ht {
                deny all;
        } location ~ /\.(?!well-known).* {
                deny all;
        }
}
```

Não esqueça de substituir em server\_name pelo domínio que será usado para acessar ou você pode remover essa diretiva.

Após isso você só precisar pressionar “CTRL + S” para salvar e “CTRL + X” se ele pedir alguma confirmação na hora de fechar só clicar “Y”.

Após isso vamos digitar

```
sudo ln -s /etc/nginx/sites-available/default /etc/nginx/sites-enabled/
```

Isso ira criar um link simbolico colocando o arquivo “default” também dentro da “sites-enabled” do nginx.

Agora vamos digitar

```
nginx -t
```

Deve mostrar algo semelhante a isto:

![](https://miro.medium.com/max/700/1*uNLti-yCZ5HEcAZBuS-zuA.png)

Após isso vamos digitar

```
sudo systemctl reload nginx
```

Para mandar o nginx recarregar os arquivos de configuração sem reiniciar.

# 5. Configure seu laravel

Agora você precisa configurar “.env” de seu laravel, isso é uma configuração individual de cada um então irei pular esse passo mas irei lembrar você que precisa que o URL da Aplicação no laravel só precisa ser seu dominio exemplo:

> [http://meusite.com.br](http://meusite.com.br)

# 6. Tudo pronto vamos testar!

Agora para testar é simples você pode abrir em seu navegador o link do seu site e irá ver que o laravel está rodando perfeitamente.

O post [Como configurar seu NGINX e PHP7 para subir uma aplicacao feita em laravel](https://luisjustin.com.br/2022/05/19/como-configurar-seu-nginx-e-php7-para-subir-uma-aplicacao-feita-em-laravel/) apareceu primeiro em [Let's Code And Drink Coffe](https://luisjustin.com.br).