nginx reconfiguração de configuração não está funcionando

1

Tendo a seguinte configuração do nginx:

server {
  server_name home.example.com;

  listen 80;

  location /rocket/ {
      proxy_set_header Upgrade $http_upgrade;
      proxy_set_header Connection "upgrade";
      proxy_http_version 1.1;
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      proxy_set_header Host $host;
      proxy_pass http://IP:3010/;
      proxy_redirect off;
  }
}

Estou exibindo um bate-papo da Web sendo executado internamente na porta 3010 para o URL home.example.com/rocket

A primeira solicitação GET é OK porque está sendo bem redirecionada, mas quando a página HTML solicita os scripts CSS e JS, ela usa o nome do servidor raiz:

home.example.com/asdfsafdsf.css

sem o caminho /rocket .

Existe uma regra de reescrita ou algo semelhante que retorna o primeiro HTML informando que todas as solicitações a seguir devem ser feitas adicionando o /rocket caminho?

    
por gonzalomelov 25.05.2018 / 14:30

1 resposta

2

Não configure isso no Nginx, configure isso no servidor de aplicativos.

A documentação do proxy reverso do RocketChat tem uma observação sobre isso:

Note: You must use the outside https address for the value at ROOT_URL in [[Section 3 Deploy-Rocket.Chat-without-docker#3-download-rocketchat]] above. This includes the https:// and leave off the port number. So instead of ROOT_URL=http://localhost:3000 use something like https://your_hostname.com

Então, edite sua configuração do RocketChat e defina

ROOT_URL=http://home.example.com/rocket/

Depois disso, não há necessidade de mexer com a configuração do Nginx sobre isso.

    
por 25.05.2018 / 15:23

Tags