Conecte o Seafile e colabore com o URL WOPI correto.
Habilite a edição segura de documentos no Seafile configurando o URL de descoberta do Collabora, o HTTPS e o acesso WOPI para sua implementação.
Para conectar o Seafile ao Collabora Online, habilite o HTTPS no Seafile, implante o Collabora e configure a integração do Seafile com o Office para apontar para o endpoint de descoberta do Collabora. Se ambos os serviços estiverem em execução na mesma rede Docker, o guia de integração atual do Seafile utiliza a URL interna http://collabora:9980/hosting/discovery; se o Collabora estiver em execução em um host separado, utilize a URL HTTPS pública dele.
O Manual de Administração do Seafile atual documenta uma collabora.ymlintegração e configurações dedicadas do Compose seahub_settings.py. Os arquivos de implantação exatos podem variar de acordo com a versão do Seafile; portanto, use o manual correspondente à sua versão instalada ao adaptar estes exemplos.
seahub_settings.py.A Seafile e a Collabora comunicam-se através do WOPI. A Seafile fornece informações de acesso ao documento e a Collabora solicita o arquivo à Seafile. O URL de descoberta indica à Seafile qual serviço da Collabora utilizar e quais recursos de edição ele anuncia.
Abra o Seafile em um navegador e confirme se o endereço normal começa com `https://` https://e se o certificado é válido. Para a implantação do Seafile em Docker, o manual atual mostra a configuração SEAFILE_SERVER_PROTOCOL=httpsno .envarquivo `seafile.yaml`, e a conclusão da configuração HTTPS por meio do proxy reverso configurado. Não prossiga com um endpoint público do Seafile em HTTP simples.
# In the Seafile deployment .env file
SEAFILE_SERVER_PROTOCOL=https
Mantenha o certificado e a chave privada sob o controle do seu proxy TLS ou gerenciador de certificados. Essa configuração por si só não emite um certificado nem configura um proxy reverso; conclua as etapas de HTTPS para sua implantação antes de habilitar a edição online do Office.
Para a configuração Docker documentada no mesmo host, use o arquivo Collabora Compose fornecido pela Seafile em vez de criar uma definição de contêiner independente. No diretório de implantação do Seafile, baixe o arquivo correspondente à versão manual e adicione-o collabora.ymlà COMPOSE_FILElista existente .env. Preserve os arquivos Compose já utilizados pela sua instalação.
# Example for a Seafile 14.0 deployment
wget https://manual.seafile.com/14.0/repo/docker/collabora.yml
Defina as variáveis do Collabora documentadas pela Seafile em .env:
COLLABORA_IMAGE=collabora/code
COLLABORA_PORT=6232
COLLABORA_USERNAME=your_admin_username
COLLABORA_PASSWORD=use_a_long_unique_secret
COLLABORA_ENABLE_ADMIN_CONSOLE=true
COLLABORA_ENABLE_FILE_LOGGING=false
Use uma senha forte e exclusiva e restrinja o acesso ao .envarquivo, pois ele contém credenciais. A porta de exemplo é a porta exposta na configuração de integração do Seafile; não assuma que seja a porta pública do seu proxy reverso. Siga o collabora.ymlarquivo correspondente e a configuração do proxy para a sua versão.
Após adicionar o serviço à implantação, inicie ou atualize o conjunto de ferramentas do Compose usando seu procedimento normal do Seafile. Evite publicar a porta interna do Collabora diretamente na internet, a menos que seu projeto exija isso explicitamente e você tenha protegido o endpoint.
Edite o seahub_settings.pyarquivo ativo e adicione as configurações de integração. Para a configuração do Compose no mesmo host, o manual do Seafile usa o nome do serviço e a porta interna do Collabora:
OFFICE_SERVER_TYPE = 'CollaboraOffice'
ENABLE_OFFICE_WEB_APP = True
OFFICE_WEB_APP_BASE_URL = 'http://collabora:9980/hosting/discovery'
WOPI_ACCESS_TOKEN_EXPIRATION = 30 * 60
OFFICE_WEB_APP_FILE_EXTENSION = (
'odp', 'ods', 'odt', 'xls', 'xlsb', 'xlsm', 'xlsx',
'ppsx', 'ppt', 'pptm', 'pptx', 'doc', 'docm', 'docx'
)
ENABLE_OFFICE_WEB_APP_EDIT = True
OFFICE_WEB_APP_EDIT_FILE_EXTENSION = (
'odp', 'ods', 'odt', 'xls', 'xlsb', 'xlsm', 'xlsx',
'ppsx', 'ppt', 'pptm', 'pptx', 'doc', 'docm', 'docx'
)
O http://URL aqui apresentado é o endereço interno de serviço para serviço na rede Docker documentada do Seafile. O site do Seafile acessível pelo navegador ainda precisa de HTTPS. Não copie este endereço interno para uma implantação em um host separado.
Para o Collabora em um host diferente, configure o Collabora por trás de HTTPS na porta pública padrão, com o proxy reverso encaminhando as solicitações para a porta de escuta do Collabora. Defina a URL base para o seu nome de host público real, por exemplo:
OFFICE_WEB_APP_BASE_URL = 'https://office.example.com/hosting/discovery'
Certifique-se de que o nome do host na URL seja resolvido e apresente um certificado válido dos clientes que precisam abrir os documentos. Configure também a lista de permissões WOPI da Collabora para aceitar o host do servidor Seafile. A documentação oficial do Docker da Collabora descreve a aliasgroupvariável de ambiente para declarar o host WOPI permitido; utilize o mesmo host e esquema usados pelo Seafile e evite o uso de curingas em um servidor de produção.
Reinicie o Seafile para que o Seahub carregue as novas configurações do Python. Use o procedimento de reinicialização para seu pacote, pilha Compose ou configuração do Kubernetes; os nomes dos serviços e os comandos variam de acordo com a implantação. Se você adicionou um novo arquivo Compose, confirme se o contêiner do Collabora está em execução antes de testar o fluxo de trabalho do navegador.
Abra um documento do Office compatível na interface web do Seafile. O arquivo deve abrir no editor do Collabora, exibir seu conteúdo e salvar uma pequena alteração de teste no Seafile. Abrir um documento com sucesso é mais útil do que apenas verificar a página de descoberta, pois testa o navegador, o Seafile, o Collabora e a transferência de arquivos WOPI.
OFFICE_WEB_APP_BASE_URLse o serviço Seafile está acessível. Use o nome interno do serviço Docker somente quando ambos os contêineres compartilharem a mesma rede.OFFICE_WEB_APP_FILE_EXTENSIONe OFFICE_WEB_APP_EDIT_FILE_EXTENSION. Limite essas listas aos formatos que seus usuários precisam e que sua implementação do Collabora suporta.seahub_settings.pyserviço Seafile ativo e reiniciou o serviço correto.Para um nó Collabora independente, o Seafile direciona especificamente os administradores para a documentação de implantação do Collabora, em vez de usar o arquivo incluído collabora.yml. O arquivo incluído destina-se à mesma configuração de host/rede Docker descrita acima.
Habilite a edição segura de documentos no Seafile configurando o URL de descoberta do Collabora, o HTTPS e o acesso WOPI para sua implementação.
Teste a área de transferência do sistema, ajuste as permissões do navegador e identifique quando uma integração incorporada do Collabora precisa de uma alteração na política de iframe.
Integre os arquivos de fonte ao Docker e ao systemplate do Collabora para que as fontes personalizadas apareçam no editor e sejam renderizadas corretamente nos documentos.
Faça backup do arquivo coolwsd.xml e de suas fontes de implantação, restaure-os com segurança e verifique o código antes que os usuários voltem a editá-lo.
Permita a origem exata do Nextcloud ou de outro servidor WOPI no código e, em seguida, verifique a lista de permissões do host ativo e diferencie-a da restrição de IP de origem do Nextcloud.
Analise as conexões do navegador, WOPI e WebSocket do Collabora para descobrir por que um documento não abre e, em seguida, aplique a correção que corresponde à sua configuração do Nextcloud.
Implante réplicas do Collabora CODE com o Helm, mantenha cada documento em um único pod por meio da afinidade WOPI e verifique o ingress, o posicionamento do nó e a edição do Nextcloud.
Rastreie uma falha no handshake de socket do navegador para o coolwsd e, em seguida, associe a rota do proxy reverso à sua versão do Collabora, incluindo a alteração CODE 26.04 do Apache.
Rastreie falhas na validação WOPI do Collabora devido a chaves incompatíveis, dados de descoberta desatualizados, desvio de relógio ou alterações de URL de proxy, sem comprometer a validação.
Redefina o zoom do navegador, teste uma sessão limpa e identifique quando um menu de tamanho malformado precisa de uma atualização do servidor Collabora.