Nginx : 2 domínios (dns) no mesmo servidor
Tags: nginx, dns, dominio, site
Published: 2019-03-28 13:36:01

---
title: Nginx : 2 domínios (dns) no mesmo servidor
published: true
description: Configure 2+ "sites" para serem acessíveis dentro de um mesmo servidor.
tags: nginx, dns, dominio, site
---

![NGINX](https://cdn-images-1.medium.com/max/1200/1*5o1SQhA0NhMSkme9LLdaDQ.png)

Esses dias eu estava aprendendo a mexer no meu droplet no DigitalOcean, que consegui com o Github Student Pack, e fiquei pensando como que eu conseguiria fazer para rodar dois sites, ou mais,no mesmo droplet. Pensei assim rápido e era impossível que cada site tivesse q rodar obrigatoriamente em um servidor diferente. Fucei vários sites na internet e achei primeiro o blog (10/10 esse blog, acessem ai) de um brasileiro que ensinava criar um proxy reverso para 1 aplicação.

### **Resumão de um proxy reverso para 1 aplicação (utilizando ubuntu)**
Primeiro é preciso instalar o Nginx e ativar ele:

```sh
$ sudo apt-get install nginx 
$ sudo systemctl enable nginx
$ sudo systemctl start nginx 
$ sudo systemctl status nginx
```

Se tudo deu certo quando você acessar o IP do seu servidor ou qualquer DNS que você configurou vai aparecer uma pagina igual a essa:

![tela nginx](https://cdn-images-1.medium.com/max/800/1*T4MTsLk9EEyFdm1Iw1FSVw.png)

Agora vamos configurar o seu proxy reverso da sua aplicação, que já deve estar rodando em alguma porta do seu servidor. Vamos criar um arquivo de configuração

```sh
$ sudo nano /etc/nginx/sites-avaliable/meusite1.com
```

e colar o seguinte código:

```sh
server {
    listen       80;
    server_name  localhost;

    location / {
        proxy_pass  http://127.0.0.1:<porta-do-servidor-site1>;
    }
}
```

Obs: Não se esqueça dos `;` se não da ruim depois.

Agora vamos excluir o arquivo de configuração padrão que vem com o Nginx e criar um link simbólico (symlink) do arquivo de configuração que você acabou de criar e reiniciar o Nginx


```sh
$ sudo rm /etc/nginx/sites-enabled/default
$ sudo ln -s /etc/nginx/sites-available/meusite1.com /etc/nginx/sites-enabled/meusite1.com
$ sudo systemctl restart nginx
```

Agora quando você acessar o IP do seu servidor ou o DNS você não vai precisar utilizar de forma explícita o número da porta que a aplicação está rodando.

------

### **Criando proxy reverso pro segundo subdominío**

Essa parte vai ser mais rápida. Você vai fazer basicamente a mesma coisa que já foi feita nos passos anteriores. Porém criando um arquivo de configuração diferente.

Você pode copiar o arquivo que você já tinha feito para o primeiro:


```sh
$ sudo cp /etc/nginx/sites-avaliable/meusite1.com /etc/nginx/sites-avaliable/meusite2.com
$ sudo nano/etc/nginx/sites-avaliable/meusite2.com
```

e modificar o número da porta que a segunda aplicação está rodando:

```sh
server {
    listen       80;
    server_name  localhost;

    location / {
        proxy_pass  http://127.0.0.1:<porta-do-servidor-site2>;
    }
}
```

Agora é só colocar esse arquivo na pasta **sites-enabled** e dar um restart no Nginx:

```sh
$ sudo ln -s /etc/nginx/sites-available/meusite2.com /etc/nginx/sites-enabled/meusite2.com
$ sudo systemctl restart nginx
```

Pronto! Seus dois domínios estão funcionando agora. Basta ter configurado o subdomínio no seu DNS com o IP e a PORTA da segunda aplicação.

------

Vlw, qualquer dúvida chama no twitter [@mat_almeida](https://twitter.com/mat_almeida)


Esse é um `repost` de um uma postagem que fiz no medium a um tempo atrás e achei que seria útil trazer para o dev.to