Como executar o datastax opscenter por trás do nginx

3

Gostaria de executar o datastax cassandra opscenter atrás do Nginx. Mas continua adicionando porta opscenter (8888 por padrão) a todos os URLs. Existe uma configuração para desativar isso ou algo assim?

Aqui está minha configuração nginx super simples:

server {
  server_name opscenter.hostname.com;

  location / {
    proxy_pass http://127.0.0.1:8888;
  }
}

Há algo que estou fazendo errado, talvez?

    
por gansbrest 28.10.2013 / 22:21

3 respostas

2

Resolvido isso adicionando redirecionamento nginx ao / opscenter

location = / {
  rewrite (.*) /opscenter;
}
    
por 28.10.2013 / 22:40
1

Você precisa criar um local como o seguinte:

location / {
    proxy_pass http://127.0.0.1:8888;
    proxy_redirect http://localhost:8888/ /;
    proxy_redirect http://your.host.name:8888/ /;
    proxy_buffering off; 

}

As linhas proxy_redirect removerão o 8888 das respostas retornadas pelo OpsCenter.

Mais informações sobre o proxy_redirect podem ser encontradas no link

    
por 26.10.2014 / 13:50
1

Eu tentei as configurações sugeridas e muito mais, mas nenhuma delas funcionou para mim.
Aqui está o meu caso de uso e minha solução.

Meus servidores

O Nginx e o OpsCenter estão em duas máquinas diferentes. Ao contrário do Nginx, o OpsCenter não é acessível diretamente da Internet.

O Nginx 1.4.6 está em 172.132.1.2 (rede pública)
OpsCenter 5.2.0 está em 172.132.2.3 (rede privada)

Configuração Nginx

upstream opscenter {
  server 172.132.2.3:8888;
}

server {
    listen 81 default_server;
    listen [::]:81 default_server ipv6only=on;

    location / {
         proxy_pass http://opscenter;
         proxy_redirect http://$proxy_host:8888/ http://$host:$server_port/;
         proxy_buffering off;
    }

    location ~ /\.ht {
        deny all;
    }
}
    
por 26.08.2015 / 19:00