9
respostas

Dificuldade com NGINX

Instalei o nginx e quando digito o localhost no navegador é mostrado sucesso na instalação. Mas os próximos passos não estão claros para mim no explicação: pr exemplo, não consigo visualizar a pasta /etc/nginx/servers/ ou /etc/nginx/sites-enabled/.

9 respostas

Oi Leopoldo, que sistema operacional você está usando? A versão do NGINX é a mesma do curso?

Olá, Wanderson. O sistema operacional é windows 7 e a versão do Nginx é 1.13.12.

Leopoldo, no Windows não temos as pastas /etc como no Unix (Mac e Linux). Neste caso, vou pedir pra que você olhe dentro da pasta do próprio nginx, lá nos arquivos de programas talvez. Dá uma olhada por favor? Caso não encontre eu tento fazer um teste aqui na VM Windows que eu tenho.

Wanderson, obrigado pela sua atenção. Honestamente, estou com meu projeto parado faz alguns dias por conta disso. Vou escrever a estrutura da pasta:

nginx 1.13.12
    -conf
    -contrib
    -docs
    -html
    -logs
    -temp
    -nginx

Leopoldo, desculpa a demora. Bom, no Windows teremos algumas diferenças mesmos.

Enquanto no Linux, podemos ter vários arquivos em server e sites-enabled, no Windows, teremos essas configurações todas unificadas dentro do arquivo nginx.conf dentro da pasta conf neste mesmo diretório que você listou acima.

Veja que tem vários servidores configurados dentro do arquivo, porém comentados.

Vi que é possível separar as configurações em arquivos diferentes e incluir um arquivo dentro do outro. Mas inicialmente, só recomendo separar em vários arquivos se as configurações forem extensas demais ou complexas pra ficar em um único arquivo.

Obrigado novamente. Eu já até assisti a alguns tutoriais no youtube, mas honestamente não estou conseguindo. Já entendi que o código server tem que ser adicionado dentro do arquivo nginx.conf. Contudo, ainda não funciona para mim. Assim, não posso prosseguir com as aulas. Acho que realmente faltou um certo cuidado do professor de deixar um tutorial para alunos que usam windows (pelo menos para aqueles que não têm nenhuma intimidade com web servers ainda).

Leopoldo, estou usando o Windows agora, já faz um bom tempo que você está com problemas, vamos tentar resolver isso agora definitivamente?

Você instalou o nginx, certo? Tem sucesso na instalação e tudo.

Você não tem essas pastas: /etc/nginx/servers/ ou /etc/nginx/sites-enabled/. Elas são específicas do Unix. As suas configurações devem ser escritas no nginx.conf que está dentro da pasta conf.

Certo?

Lá você coloca essas linhas dentro da chave http.

http {
server {
  listen 2020;
  root /Users/alura/performance-web/site;
}

server {
  listen 3030;
  root /Users/alura/performance-web/dist;
}
}

o HTTP já tá escrito lá no nginx,conf, você não precisa mudar nada. Só adicionar as linhas no final, antes da última chave.

Depois disso, você usa o gerenciador de tarefas pra finalizar os processos do nginx e depois é só iniciá-lo novamente. Eu não conseguir dar restar pela linha de comando.

Testei dessa forma e não tive problema algum. Tenta e me dá um feedback?

Desculpe a demora na resposta. Eu não consegui. Inclui o código dentro do arquivo de configuração do nginx

http {
server {
      listen 2020;
      root C:/curso alura/Curso_Otimização1/performance-web-79fd7470bdf853a3e86528e0bb28b2254e791974/site;
    }

    server {
      listen 3030;
      root C:/curso alura/Curso_Otimização1/performance-web-79fd7470bdf853a3e86528e0bb28b2254e791974/dist;
    }
}

Mas eu gostaria de informar que embora ao digitar localhost no meu navegador e dar a mensagem de ter sido instalado com sucesso e tal, eu não vejo o nginx no meu gerenciador de tarefas. Quando eu clico no aplicativo para executar o nginx, abre e fecha a caixa de comando instantaneamente. Eu acho que esse está sendo o problema?

Opa, desculpa a demora Leopoldo. Se isso acontece é por que o Nginx.exe é só um script de execução rápida, é mais comum usar os comandos no terminal.

Talvez você não consiga ver nos processos do gerenciador mesmo, mas acredito que possa ver nos serviços que estão rodando no windows.

Lembrando que localhost, vai acessar sua porta 80, e você está configurando as portas 2020 e 3030, então pra acessar certinho, você precisa informar a porta no endereço:

localhost:2020

e

localhost:3030