- Home
- Docs
- Instalação e configuração
- Community
- Versão Docker
- Configurando proxy reverso para Nextcloud e editores ONLYOFFICE
Configurando proxy reverso para Nextcloud e editores ONLYOFFICE
Introdução
Ao instalar múltiplas soluções de servidor em máquinas diferentes, pode surgir um problema na configuração de um servidor proxy.
Neste caso específico, existem três máquinas diferentes com:
- nginx — http://nginx,
- Nextcloud — http://nextcloud,
- editores ONLYOFFICE — http://onlyoffice.
Tudo foi instalado usando Docker e a porta 80.
Para estabelecer a conexão correta, as seguintes ações devem ser realizadas:
- Personalização do Nginx para que uma requisição em http://nginx abra o Nextcloud,
- Personalização do Nextcloud para trabalhar com editores de documentos, disponíveis em http://nginx/editors/.
Leia este artigo para saber como configurar corretamente um servidor proxy para nginx, Nextcloud e ONLYOFFICE Docs.
Passo 1. Configurando um proxy para o Nextcloud
Para fazer o proxy do Nextcloud via nginx, altere as configurações do nginx e adicione seu endereço à lista de domínios confiáveis (trusted domains) do Nextcloud.
As configurações necessárias estão localizadas no contêiner nginx em /etc/nginx/conf.d/default.conf. Deixe este arquivo da seguinte forma:
server {
listen 80;
location / {
proxy_pass_header Server;
proxy_pass http://nextcloud/;
}
}
Preste atenção à barra (/) ao final do caminho em proxy_pass.
Atualize as configurações do nginx com:
service nginx reload
Agora adicione o domínio http://nginx. Abra a configuração no contêiner do Nextcloud em /var/www/html/config/config.php. Encontre ou adicione a seção trusted_domain lá e insira o endereço do nginx. Após as alterações, esta parte da configuração ficará assim:
'trusted_domain' => (0 => 'nextcloud', 1 => 'nginx')
Passo 2. Configurando um proxy para os editores de documentos
Novamente, abra o arquivo default.conf no servidor nginx e adicione mais um local (location):
location /editors/ {
proxy_pass http://onlyoffice/;
}
Mas isso não será suficiente para os editores funcionarem. Por padrão, o editor de documentos gera links para recursos usando o endereço que vem em uma requisição. Como o editor não está conectado diretamente ao servidor proxy, ele gerará links independentemente do caminho virtual (ex: http://nginx/apps/files/). Isso não está correto, pois os arquivos em /apps/files/ estão localizados no servidor http://onlyoffice/.
Para corrigir isso, no cabeçalho da requisição, você precisa indicar o caminho para gerar os links com o cabeçalho “X-Forwarded-Host”.
Adicione o seguinte código no início do arquivo de configuração:
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $proxy_connection;
proxy_set_header X-Forwarded-Host $http_host/editors;
server {
listen 80;
location / {
proxy_pass_header Server;
proxy_pass http://nextcloud/;
}
location /editors/ {
proxy_pass http://onlyoffice/;
}
}
Passo 3. Instalando o conector ONLYOFFICE-Nextcloud
Use nosso conector pronto para vincular as instâncias do ONLYOFFICE e do Nextcloud entre si. O conector está disponível no GitHub, mas a maneira mais fácil é instalá-lo a partir da loja de aplicativos do Nextcloud.
Após a instalação, você verá uma nova opção no menu de configurações. Lá, você precisará especificar o endereço dos editores ONLYOFFICE — http://nginx/editors/.