Connectez Seafile et Collabora avec l'URL WOPI correcte
Activez l'édition sécurisée de documents dans Seafile en configurant l'URL de découverte de Collabora, le protocole HTTPS et l'accès WOPI pour votre déploiement.
Pour connecter Seafile à Collabora Online, activez le protocole HTTPS sur Seafile, déployez Collabora et configurez l'intégration Office de Seafile pour qu'elle pointe vers le point de terminaison de découverte de Collabora. Si les deux services s'exécutent sur le même réseau Docker, le guide d'intégration actuel de Seafile utilise l'URL internehttp://collabora:9980/hosting/discovery ; si Collabora s'exécute sur un hôte distinct, utilisez plutôt son URL HTTPS publique.
Le manuel d'administration actuel de Seafile décrit collabora.ymll'intégration et la configuration Compose seahub_settings.py. Les fichiers de déploiement exacts peuvent varier selon la version de Seafile ; par conséquent, utilisez le manuel correspondant à votre version installée pour adapter ces exemples.
seahub_settings.py.Seafile et Collabora communiquent via WOPI. Seafile fournit les informations d'accès au document, et Collabora demande le fichier à Seafile. L'URL de découverte indique à Seafile quel service Collabora utiliser et quelles fonctionnalités d'édition il propose.
Ouvrez Seafile dans un navigateur et vérifiez que son adresse IP commence bien par `http://localhost:8000` https://et que son certificat est valide. Pour le déploiement Docker de Seafile, la documentation actuelle indique de configurer SEAFILE_SERVER_PROTOCOL=httpsle .envfichier `seafile.conf`, puis de finaliser la configuration HTTPS via le proxy inverse configuré. N'utilisez pas un point de terminaison Seafile public en HTTP simple.
# In the Seafile deployment .env file
SEAFILE_SERVER_PROTOCOL=https
Conservez le certificat et la clé privée sous le contrôle de votre proxy TLS ou de votre gestionnaire de certificats. Ce paramètre seul ne permet pas d'émettre un certificat ni de configurer un proxy inverse ; veuillez finaliser la configuration HTTPS de votre déploiement avant d'activer la modification en ligne.
Pour la configuration Docker sur le même hôte, utilisez le fichier Compose Collabora fourni par Seafile plutôt que de créer une définition de conteneur indépendante. Dans le répertoire de déploiement Seafile, téléchargez le fichier correspondant à la version du manuel et ajoutez-le à la liste collabora.ymlexistante . Conservez les fichiers Compose déjà utilisés par votre installation.COMPOSE_FILE.env
# Example for a Seafile 14.0 deployment
wget https://manual.seafile.com/14.0/repo/docker/collabora.yml
Définissez les variables Collabora documentées par Seafile dans .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
Utilisez un mot de passe unique et robuste et limitez l'accès au .envfichier, car il contient des informations d'identification. Le port indiqué en exemple est celui exposé dans la configuration d'intégration de Seafile ; ne présumez pas qu'il s'agit du port public de votre proxy inverse. Suivez la procédure décrite dans le collabora.ymlfichier correspondant et la configuration du proxy pour votre déploiement.
Une fois le service ajouté au déploiement, démarrez ou mettez à jour la pile Compose en suivant votre procédure Seafile habituelle. Évitez de publier le port interne de Collabora directement sur Internet, sauf si votre conception l'exige explicitement et que vous avez sécurisé le point de terminaison.
Modifiez le seahub_settings.pyfichier actif et ajoutez les paramètres d'intégration. Pour une configuration Compose sur le même hôte, le manuel Seafile utilise le nom du service et le port interne 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'
)
L' http://URL indiquée ici correspond à l'adresse interne de communication entre les services au sein du réseau Docker documenté de Seafile. Le site Seafile accessible via un navigateur nécessite toujours le protocole HTTPS. Ne copiez pas cette adresse interne dans un déploiement sur un hôte distinct.
Pour Collabora installé sur un autre hôte, configurez-le derrière un serveur HTTPS sur le port public standard, le proxy inverse redirigeant les requêtes vers le port d'écoute de Collabora. Définissez l'URL de base sur votre nom d'hôte public réel, par exemple :
OFFICE_WEB_APP_BASE_URL = 'https://office.example.com/hosting/discovery'
Assurez-vous que le nom d'hôte dans l'URL est résolu et qu'il présente un certificat valide pour les clients qui doivent ouvrir les documents. Configurez également la liste blanche WOPI de Collabora pour autoriser l'hôte du serveur Seafile. La documentation Docker officielle de Collabora décrit la aliasgroupvariable d'environnement permettant de déclarer l'hôte WOPI autorisé ; veillez à utiliser exactement le même hôte et le même schéma que Seafile, et évitez les accès génériques trop larges sur un serveur de production.
Redémarrez Seafile pour que Seahub charge les nouveaux paramètres Python. Utilisez la procédure de redémarrage correspondant à votre package, votre pile Compose ou votre configuration Kubernetes ; les noms de service et les commandes varient selon les déploiements. Si vous avez ajouté un nouveau fichier Compose, vérifiez que le conteneur Collabora est en cours d'exécution avant de tester le flux de travail du navigateur.
Ouvrez un document Office compatible depuis l'interface web de Seafile. Le fichier devrait s'ouvrir dans l'éditeur de Collabora, afficher son contenu et enregistrer une modification de test dans Seafile. L'ouverture réussie d'un document est plus utile que la simple consultation de la page de découverte, car elle permet de tester le navigateur, Seafile, Collabora et le transfert de fichiers WOPI.
OFFICE_WEB_APP_BASE_URLest accessible depuis le service Seafile. Utilisez le nom de service Docker interne uniquement si les deux conteneurs partagent ce réseau.OFFICE_WEB_APP_FILE_EXTENSIONet OFFICE_WEB_APP_EDIT_FILE_EXTENSION. Limitez ces listes aux formats dont vos utilisateurs ont besoin et que votre déploiement Collabora prend en charge.seahub_settings.pyservice Seafile actif et redémarré le service approprié.Pour un nœud Collabora autonome, Seafile recommande aux administrateurs de consulter la documentation de déploiement de Collabora plutôt que d'utiliser le fichier intégré collabora.yml. Ce dernier est conçu pour la même configuration hôte/réseau Docker que celle décrite précédemment.
Activez l'édition sécurisée de documents dans Seafile en configurant l'URL de découverte de Collabora, le protocole HTTPS et l'accès WOPI pour votre déploiement.
Testez le presse-papiers système, ajustez les autorisations du navigateur et identifiez les cas où une intégration Collabora intégrée nécessite une modification de la politique iframe.
Montez les fichiers de polices dans Docker et le système de Collabora afin que les polices personnalisées apparaissent dans l'éditeur et s'affichent correctement dans les documents.
Sauvegardez coolwsd.xml et ses sources de déploiement, restaurez-les en toute sécurité et vérifiez le code avant que les utilisateurs ne reprennent l'édition.
Autorisez l'origine exacte Nextcloud ou autre WOPI dans CODE, puis vérifiez la liste blanche des hôtes actifs et distinguez-la de la restriction d'adresse IP source de Nextcloud.
Analysez les connexions du navigateur, WOPI et WebSocket de Collabora pour déterminer pourquoi un document ne s'ouvre pas, puis appliquez la solution correspondant à votre configuration Nextcloud.
Déployez des réplicas Collabora CODE avec Helm, conservez chaque document sur un pod via l'affinité WOPI et vérifiez l'entrée, le placement des nœuds et l'édition Nextcloud.
Tracez une erreur de négociation de socket entre le navigateur et coolwsd, puis faites correspondre la route du proxy inverse à votre version de Collabora, y compris la modification Apache CODE 26.04.
Détecter les échecs de preuve WOPI de Collabora dus à des clés non concordantes, des données de découverte obsolètes, une dérive d'horloge ou des modifications d'URL de proxy, sans affaiblir la validation.
Réinitialisez le zoom du navigateur, testez une session propre et identifiez quand un menu de taille incorrecte nécessite une mise à jour du serveur Collabora.