rstudio-server no proxy reverso do Nginx

2

Eu corro localmente um serviço, rstudio-server . Este serviço pode ser acessado no IP local da minha máquina, porta 8787.

Agora, gostaria de acessar esse serviço do meu servidor com este endereço: rstudio.example.com (uma entrada A deve ser feita).

Eu uso Nginx e criei este bloco:

server {
    listen 80;
    listen 443 ssl;
    server_name rstudio.example.com;
    root /usr/lib64/rstudio-server/www;
    include /etc/nginx/ssl/rstudio.ssl.conf;


location / {
    # rewrite ^/rstudio/(.*)$ /$1 break;
    #proxy_pass http://192.168.1.94:8787;
    proxy_pass http://unix:/run/rstudio-server/rstudio-server.sock;
    #proxy_redirect http://192.168.1.94:8787/ rstudio.myexample.com;
    proxy_redirect http://unix:/run/rstudio-server/rstudio-server.sock rstudio.myexample.com;
    #proxy_http_version 1.1;
    #proxy_set_header Upgrade $http_upgrade;
    #proxy_set_header Connection "upgrade"; 
    }

Eu voluntariamente deixei comentar todas as opções que tentei. Nenhum de todos os tipos de soluções me permite conectar ao serviço em example.com. Tudo o que posso ver no meu log é:

*5 epoll_wait() reported that client prematurely closed connection, so upstream connection is closed too while sending request to upstream

Pesquisando este erro, não permiti que eu encontrasse uma resposta clara.

O que estou fazendo errado na minha configuração de proxy no Nginx? Obrigado por sugestões.

    
por gabx 12.01.2016 / 18:30

1 resposta

0

Tente isto:

http {

  map $http_upgrade $connection_upgrade {
      default upgrade;
      ''      close;
  }

  server {
    listen 80;
    listen 443 ssl;
    server_name rstudio.example.com;
    root /usr/lib64/rstudio-server/www;
    include /etc/nginx/ssl/rstudio.ssl.conf;

    location / {
      proxy_pass http://192.168.1.94:8787;
      proxy_redirect http://192.168.1.94:8787/ $scheme://$host/;
      proxy_http_version 1.1;
      proxy_set_header Upgrade $http_upgrade;
      proxy_set_header Connection $connection_upgrade;
      proxy_read_timeout 20d;
    }
  }
}
    
por 12.01.2016 / 23:53