Configurer ONLYOFFICE Docs Édition Communauté

Introduction

Pour modifier les paramètres du serveur ONLYOFFICE Docs, configurez le paramètre approprié dans le fichier de configuration ONLYOFFICE Docs avec le chemin d'accès suivant:

  • Pour Linux - /etc/onlyoffice/documentserver/default.json
  • Pour Windows - %ProgramFiles%\ONLYOFFICE\DocumentServer\config\default.json

Si vous souhaitez le modifier, vous pouvez utiliser le fichier local.json où on doit sauvegarder tous les paramètres modifiés. Ce fichier est du même référentiel que le fichier default.json file alors il faut conserver la structure entière de l'objet pour le paramètre nécessaire.

Veuillez ne pas modifier directement le contenu du référentiel de fichier default.json. On va rétablir les valeurs par défaut lorsque vous redémarrez le conteneur Docker ou effectuez une mise à niveau ONLYOFFICE Docs, toutes les modifications personnelles seront donc perdues.

Les paramètres par défaut du serveur sont affichés ci-dessous.

StatsD

ParamètreDescriptionTypeDéfaut
Indique l'activation de StatsD pour ONLYOFFICE Docs.booleanfalse
Définit l'hôte d'écoute StatsD (le nom de l'hôte ou l'adresse IP).chaîne"localhost"
Définit le port d'écoute du serveur StatsD.chaîne"8125"
Définit la chaîne qui sera ajouté au début de toutes les statistiques automatiquement. Ceci permet de distinguer les applications qui utilisent le même serveur StatsD.chaîne"ds."

Ces paramètres définissent les propriétés du serveur StatsD qui se rapportent à l'agrégateur de métriques.

Exemple
"statsd": {
    "useMetrics": false,
    "host": "localhost",
    "port": "8125",
    "prefix": "ds."
}

Logger de données

ParamètreDescriptionTypeDéfaut
Indique le chemin d'accès du fichier journal.chaîne""
Définit les options du journal.objet
Indique si les informations du journal sont imprimées dans la console.booleantrue

Ces paramètres définissent les propriétés du logger de données.

Exemple
"log": {
    "filePath": "",
    "options": {
        "replaceConsole": true
    }
}

Files d'attente

ParamètreDescriptionTypeDéfaut
Indique le type du service intermédiaire.chaîne"rabbitmq"
Indique le temps d'attente (exprimé en secondes).entier300
Indique le TTL (la durée de vie) de tous les messages dans la file d'attente (exprimé en secondes).entier900

Ces paramètres définissent la file d'attente de l'agent de messages.

Exemple
"queue": {
    "type": "rabbitmq",
    "visibilityTimeout": 300,
    "retentionPeriod": 900
}

Email

ParamètreDescriptionTypeDéfaut
Définit les paramètres de connexion de base au serveur SMTP.objet
Définit le nom d'hôte ou l'adresse IP du serveur SMTP.chaîne"localhost"
Définit le port d'écoute du serveur SMTP.entier587
Définit les données d'authentification.objet
Définit le nom d'utilisateur de l'authentification.chaîne"onlyoffice"
Définit le mot de passe de l'authentification.chaîne"onlyoffice"
Définit les paramètres techniques pour établir la connexion au serveur SMTP.objet
Définit l'autorisation d'utiliser les fichiers en tant que contenu. Lorsque le paramètre est vrai, on ne peut pas utiliser les données JSON depuis la source non approuvée en tant qu'adresse e-mail. Lorsque le nœud d'une pièce jointe ou d'un message tente d'extraire quelque chose d'un fichier, une erreur est renvoyée.booleanfalse
Définit l'autorisation d'utiliser les adresses URL en tant que contenu.booleanfalse
Définit les paramètres des messages électroniques.objet
Définit l'adresse e-mail de l'expéditeur. Toutes les adresses e-mail peuvent être simples"sender@server.com" ou peuvent contenir le nom mis en forme '"Nom de l'expéditeur sender@server.com'.chaîne"from@example.com"
Définit la liste séparée par une virgule ou une plage des adresses e-mail de destinataires qui seront affichés dans le champ À.chaîne"to@example.com"

Ces paramètres définissent le serveur de courrier externe qui est utilisé pour envoyer des notifications. Pour vous connecter au serveur de courrier, utilisez la bibliothèque nodemailer. Plusieurs paramètres de configuration sont n sont transmis directement à cette bibliothèque.

Exemple
"email": {
    "smtpServerConfiguration": {
        "host": "localhost",
        "port": 587,
        "auth": {
            "user": "onlyoffice",
            "pass": "onlyoffice"
        }
    },
    "connectionConfiguration": {
        "disableFileAccess": false,
        "disableUrlAccess": false
    },
    "contactDefaults": {
        "from": "from@example.com",
        "to": "to@example.com"
    }
}

Notification

ParamètreDescriptionTypeDéfaut
Définit les règles de notification pour quatre types de notifications: licenseExpirationWarning, licenseExpirationError, licenseLimitEdit, licenseLimitLiveViewer.objet
Définit les règles de notification licenseExpirationWarning.objet
Définit si la notification licenseExpirationWarning est activée. Il faut activer chaque type de notification à part.booleanfalse
Définit la façon d'envoyer la notification licenseExpirationWarning. Actuellement, e-mail est le seul type disponible.tableau de chaînes["email"]
Définit le modèle du titre et du corps de la notification licenseExpirationWarning.objet
Définit le modèle du titre de la notification licenseExpirationWarning.chaîne"%s Avertissement d'expiration de la licence Docs"
Définit le modèle du corps de la notification licenseExpirationWarning.chaîne"Attention! Votre licence va bientôt expirer le %s.\nCependant, vous ne pourrez plus recevoir l'assistance technique personnelle et installer de nouveaux versions de Docs qui seront mis en production par la suite."
Définit la politique d'expédition de la notification licenseExpirationWarning.objet
Définit le temps d'expédition de la notification licenseExpirationWarning (dans la plage de temps de la période spécifiée).chaîne"1d"
Définit les règles de notification llicenseExpirationError.objet
Définit si la notification licenseExpirationError est activée. Il faut activer chaque type de notification à part.booleanfalse
Définit la façon d'envoyer la notification licenseExpirationError. Actuellement, e-mail est le seul type disponible.tableau de chaînes["email"]
Définit le modèle du titre et du corps de la notification llicenseExpirationError.objet
Définit le modèle du titre de la notification licenseExpirationError.chaîne"%s Avertissement d'expiration de la licence Docs"
Définit le modèle du corps de la notification licenseExpirationError.chaîne"Attention! Votre licence a expiré le %s.\nVous ne pouvez plus recevoir l'assistance technique personnelle et installer de nouveaux versions de Docs qui seront mis en production par la suite.\nVeuillez contacter sales@onlyoffice.com pour renouveler votre abonnement."
Définit la politique d'expédition de la notification licenseExpirationError.objet
Définit le temps d'expédition de la notification llicenseExpirationError (dans la plage de temps de la période spécifiée).chaîne"1d"
Définit les règles de notification licenseLimitEdit.objet
Définit si la notification licenseLimitEdit est activée. Il faut activer chaque type de notification à part.booleanfalse
Définit la façon d'envoyer la notification licenseLimitEdit. Actuellement, e-mail est le seul type disponible.tableau de chaînes["email"]
Définit le modèle du titre et du corps de la notification llicenseLimitEdit.objet
Définit le modèle du titre de la notification licenseLimitEdit.chaîne"%s Avertissement de la limite maximale autorisée selon la licence Docs"
Définit le modèle du corps de la notification licenseLimitEdit.chaîne"Attention! La limite de connexion atteinte est %s%% de %s selon votre licence."
Définit la politique d'expédition de la notification licenseLimitEdit.objet
Définit le temps d'expédition de la notification licenseLimitEdit (dans la plage de temps de la période spécifiée).chaîne"1d"
Définit les règles de notification licenseLimitLiveViewer.objet
Définit si la notification licenseLimitLiveViewer est activée. Il faut activer chaque type de notification à part.booleanfalse
Définit la façon d'envoyer la notification licenseLimitLiveViewer. Actuellement, e-mail est le seul type disponible.tableau de chaînes["email"]
Définit le modèle du titre et du corps de la notification licenseLimitLiveViewer.objet
Définit le modèle du titre de la notification licenseLimitLiveViewer.chaîne"%s Avertissement de la limite maximale autorisée selon la licence Docs"
Définit le modèle du corps de la notification licenseLimitLiveViewer.chaîne"Attention! La limite de connexion atteinte est %s%% de %s selon votre licence."
Définit la politique d'expédition de la notification licenseLimitLiveViewer.objet
Définit le temps d'expédition de la notification icenseLimitLiveViewer (dans la plage de temps de la période spécifiée).chaîne"1d"

Ces paramètres définissent la configuration des notifications.

Les types et le contenu des notifications:

  • 70% de la limite de connexions (quota des utilisateurs unique) est dépassée.

    Avertissement de la limite maximale autorisée selon la licence "Attention! La limite de connexion atteinte est 70% selon votre licence."

  • La limite de connexions (quota des utilisateurs unique) est atteinte.

    Avertissement de la limite maximale autorisée selon la licence: "Attention! La limite de connexion atteinte est 100% selon votre licence."

  • 30 jours avant l'expiration de la licence.

    Avertissement de l'expiration de licence: "Attention! Votre licence va bientôt expirer le 8 septembre 2024. Cependant, vous ne pourrez plus recevoir l'assistance technique personnelle et installer de nouveaux versions de Docs qui seront mis en production par la suite."

  • La licence a expiré.

    Avertissement de la limite maximale autorisée selon la licence: "Attention! Votre licence a expiré le 8 septembre. Vous ne pouvez plus recevoir l'assistance technique personnelle et installer de nouveaux versions de Docs qui seront mis en production par la suite. Veuillez contacter sales@onlyoffice.com pour renouveler votre abonnement."

Ces notifications sont incluses dans la journalisation des diagnostics du serveur au niveau Avertissement ou Erreur.

Exemple
"notification": {
    "rules": {
        "licenseExpirationWarning": {
            "enable": false,
            "transportType": [
                "email"
            ],
            "template": {
                "title": "%s Docs license expiration warning",
                "body": "Attention! Votre licence va bientôt expirer le %s.\nCependant, vous ne pourrez plus recevoir l'assistance technique personnelle et installer de nouveaux versions de Docs qui seront mis en production par la suite."
            },
            "policies": {
                "repeatInterval": "1d"
            }
        },
        "licenseExpirationError": {
            "enable": false,
            "transportType": [
                "email"
            ],
            "template": {
                "title": "%s Docs license expiration warning",
                "body": "Attention! Votre licence a expiré le %s.\nVous ne pouvez plus recevoir l'assistance technique personnelle et installer de nouveaux versions de Docs qui seront mis en production par la suite.\nVeuillez contacter sales@onlyoffice.com pour renouveler votre abonnement."
            },
            "policies": {
                "repeatInterval": "1d"
            }
        },
        "licenseExpirationError": {
            "enable": false,
            "transportType": [
                "email"
            ],
            "template": {
                "title": "%s %s Avertissement de la limite maximale autorisée selon la licence Docs",
                "body": "Attention! La limite de connexion atteinte est %s%% de %s selon votre licence."
            },
            "policies": {
                "repeatInterval": "1h"
            }
        },
        "licenseLimitLiveViewer": {
            "enable": false,
            "transportType": [
                "email"
            ],
            "template": {
                "title": "%s %s Avertissement de la limite maximale autorisée selon la licence Docs",
                "body": "Attention! La limite de connexion Lecture seule en direct atteinte est %s%% de %s selon votre licence."
            },
            "policies": {
                "repeatInterval": "1h"
            }
        }
    }
}

Service de stockage des documents

ParamètreDescriptionTypeDéfaut
Définit le service de stockage des documents.chaîne"storage-fs"
Définit les paramètres de l'objet fileSystem.objet
Indique le chemin d'accès au dossier App_Data où tous les fichiers sont stockés.chaîne""
Indique le délai d'expiration de l'URL temporaire de fileSystem (exprimé en secondes).entier900
Définit la chaîne secrète pour signer l'URL.chaîne"verysecretstring"
Indique la région AWS où vous voulez placer le conteneur Amazon.chaîne""
Indique le point de terminaison du stockage Amazon S3.chaîne"http://localhost/s3"
Indique le nom unique du stockage Amazon S3.chaîne"cache"
Définit le dossier S3 AWS où tous les fichiers sont stockés.chaîne"files"
Définit le nom du dossier de mémoire cache pour travailler en mode mutualisé.chaîne"data"
Indique le délai d'expiration de l'URL du stockage S3 AWS (exprimée en millisecondes).entier604800
Définit la clé d'identité pour accéder au stockage de documents S3 AWS.chaîne"AKID"
Définit la clé secrète pour accéder au stockage de documents S3 AWS.chaîne"SECRET"
Indique si SSL du stockage de documents S3 AWS document est activé.booleanfalse
Indique si on utilise toujours les demandes de type chemin vers le stockage de documents S3 AWS.booleantrue
Indique l'hôte externe remplaçant l'hôte spécifié dans la demande.chaîne""

Tous ces paramètres définissent la configuration du service de stockage des documents.

Exemple
"storage": {
    "name": "storage-fs",
    "fs": {
        "folderPath": "",
        "urlExpires": 900,
        "secretString": "verysecretstring"
    },
    "region": "",
    "endpoint": "http://localhost/s3",
    "bucketName": "cache",
    "storageFolderName": "files",
    "cacheFolderName": "data",
    "urlExpires": 604800,
    "accessKeyId": "AKID",
    "secretAccessKey": "SECRET",
    "sslEnabled": false,
    "s3ForcePathStyle": true,
    "externalHost": ""
}

Stockage persistant

Ces paramètres permettent de régler le stockage persistant qui sert à séparer les paramètres de stockages des fichiers mis en cache et des fichiers perdues ou des fichiers d'erreur. Les paramètres qui ne sont pas définis pour cet objet de sont hérités de l'objet stockage. La séparation est convenable pour les mises à jour du serveur.

Exemple
"persistentStorage": {
}

RabbitMQ

ParamètreDescriptionTypeDéfaut
Définit l'URL de RabbitMQchaîne"amqp://guest:guest@localhost:5672"

Indique des options de socket RabbitMQ qui seront ajoutées à la bibliothèque de sockets (net ou tls). Ce sont les paramètres des éléments définis dans les champs appropriés. On peut utiliser les paramètres de sockets pour des connections SSL comportant les champs suivants:

  • cert - définit le certificat à présenter au serveur (au format PEM ou pkcs12 format),
    type: chaîne,
    exemple: "";
  • key - définit la clé privée du certificat (au format PEM ou pkcs12),
    type: chaîne,
    exemple: "";
  • passphrase - définit la phrase d'authentification pour la clé privée,
    type: chaîne,
    exemple: "MySecretPassword";
  • ca - définit la liste des certificats émis par une autorité de certification de confiance au format PEM format puisque nous utilisons un certificat auto-signé,
    type: tableau,
    exemple: [];
  • noDelay - définit si TCP_NODELAY (algorithme de Nagle) est sur le socket sous-jacent ,
    type: boolean,
    example: true.
objet{}
Indique le serveur d'échange Publier-S'abonner.chaîne"ds.pubsub"
Définit une file d'attente de tâches.chaîne"ds.converttask"
Définit une file d'attente de réponses.chaîne"ds.convertresponse"
Définit l'échange de lettres mortes.chaîne"ds.exchangeconvertdead"
Définit une file d'attente de lettres mortes.chaîne"ds.convertdead"
Définit la file d'attente retardée.chaîne"ds.delayed"

Tous ces paramètres définissent la configuration du service intermédiaire RabbitMQ.

Exemple
"rabbitmq": {
    "url": "amqp://guest:guest@localhost:5672",
    "socketOptions": {},
    "exchangepubsub": "ds.pubsub",
    "queueconverttask": "ds.converttask",
    "queueconvertresponse": "ds.convertresponse",
    "exchangeconvertdead": "ds.exchangeconvertdead",
    "queueconvertdead": "ds.convertdead",
    "queuedelayed": "ds.delayed"
}

ActiveMQ

ParamètreDescriptionTypeDéfaut
Définit les paramètres de connexion ActiveMQ.objet
Indique le port du serveur auquel le conteneur ActiveMQ a l'accès.entier5672
Indique l'hôte du serveur (le nom d'hôte ou l'adresse IP) du serveur auquel le conteneur ActiveMQ a l'accès.chaîne"localhost"
Indique si ActiveMQ va se reconnecter automatiquement après une défaillance (true) ou ne va pas (false).booleanfalse
Définit une file d'attente de tâches.chaîne"ds.converttask"
Définit une file d'attente de réponses.chaîne"ds.convertresponse"
Définit une file d'attente de lettres mortes.chaîne"ActiveMQ.DLQ"
Définit la file d'attente retardée.chaîne"ds.delayed"
Indique le sujet (Topic) du modèle Publier-S'abonner.chaîne"ds.pubsub"

Tous ces paramètres définissent la configuration du service intermédiaire ActiveMQ .

Exemple
"activemq": {
    "connectOptions": {
        "port": 5672,
        "host": "localhost",
        "reconnect": false
    },
    "queueconverttask": "ds.converttask",
    "queueconvertresponse": "ds.convertresponse",
    "queueconvertdead": "ActiveMQ.DLQ",
    "queuedelayed": "ds.delayed",
    "topicpubsub": "ds.pubsub"
}

Cache DNS

ParamètreDescriptionTypeDéfaut
Indique si le cache DNS est activé.booleantrue
Indique le délai d'expiration de l'enregistrement DNS (exprimé en secondes).entier300
Indique la taille du cache DNS.entier1000

Tous ces paramètres définissent la configuration du cache DNS utilisé pour filtrage IP.

Exemple
"dnscache": {
    "enable" : true,
    "ttl" : 300,
    "cachesize" : 1000
}

Protocole OpenPGP

ParamètreDescriptionTypeDéfaut
Définit le Protocole de configuration OpenPGP.objet{}
Définit les paramètres de cryptage OpenPGP.objet
Définit le mot de passe à utiliser pour le cryptage OpenPGP.tableau de chaînes["verysecretstring"]
Définit les paramètres de décryptage OpenPGP.objet
Définit le mot de passe à utiliser pour le décryptage OpenPGP.tableau de chaînes["verysecretstring"]

Ces paramètres définissent la configuration du protocole OpenPGP qui sert à crypter le mot de passe lors de de la modification d'un document crypté.

Exemple
"openpgpjs": {
    "config": {
    },
    "encrypt": {
        "passwords": ["verysecretstring"]
    },
    "decrypt": {
        "passwords": ["verysecretstring"]
    }
}

Algorithme AES-256-GCM

ParamètreDescriptionTypeDéfaut
Définit la configuration de l'algorithme AES-256-GCM.objet
Indique la longueur de la clé exprimé en octets.entier32
Indique la longueur du sale exprimé en octets.entier64
Indique la longueur du vecteur d'initialisation exprimé en octets.entier16
Indique la longueur des itérations exprimé en octets.entier5
Définit le mot de passe à utiliser pour le chiffrement AES-256-GCM.chaîne"verysecretstring"

Ces paramètres définissent la configuration du chiffrement AES-256-GCM.

Exemple
"aesEncrypt": {
    "config": {
        "keyByteLength": 32,
        "saltByteLength": 64,
        "initializationVectorByteLength": 16,
        "iterationsByteLength": 5
    },
    "secret": "verysecretstring"
}

Goulot d'étranglement

ParamètreDescriptionTypeDéfaut
Définit les options du constructeur pour générer les limitations de requêtes de la base de données.objet{}

Ce paramètre définit la configuration du Goulot d'étranglement.

Exemple
"bottleneck": {
    "getChanges": {
    }
}

WOPI

ParamètreDescriptionTypeDéfaut
Indique si WOPI est activé.booleanfalse
Définit l'hôte de WOPI (le nom de hôte ou l'adresse IP).chaîne""
Indique le chemin d'accès au modèle WOPI HTML.chaîne"../../web-apps/apps/api/wopi"
Définit la zone à utiliser par le Serveur de documents pour diriger le navigateur vers l'application WOPI.chaîne"external-http"
Définit un chemin vers le favicon de l'éditeur des documents.chaîne"/web-apps/apps/documenteditor/main/resources/img/favicon.ico"
Définit un chemin vers le favicon de l'éditeur des classeurs.chaîne"/web-apps/apps/spreadsheeteditor/main/resources/img/favicon.ico"
Définit un chemin vers le favicon de l'éditeur des présentations.chaîne"/web-apps/apps/presentationeditor/main/resources/img/favicon.ico"
Définit le chemin vers le favicon de l'éditeur des fichers PDF.chaîne"/web-apps/apps/pdfeditor/main/resources/img/favicon.ico"
Définit la liste des paramètres WOPI qui sont bloqués lors de l'envoi de ce tableau au navigateur. Cependant, ces paramètres sont disponibles sur le serveur.tableau de chaînes["FileUrl"]
Définit les types de fichiers qu'on pourra afficher dans l'éditeur des fichiers PDF.tableau de chaînes["djvu", "xps", "oxps"]
Définit les types de fichiers qu'on pourra modifier dans l'éditeur des fichiers PDF.tableau de chaînes["pdf"]
Définit les types de formulaires.tableau de chaînes["pdf"]
Définit les types de fichiers qu'on pourra visionner dans l'éditeur des documents.tableau de chaînes["doc", "dotm", "dot", "fodt", "ott", "rtf", "mht", "mhtml", "html", "htm", "xml", "epub", "fb2", "sxw", "stw", "wps", "wpt", "docxf", "oform"]
Définit les types de fichiers qu'on pourra modifier dans l'éditeur des documents.tableau de chaînes["docx", "dotx", "docm", "odt", "txt"]
Définit les types de fichiers qu'on pourra visionner dans l'éditeur des classeurs.tableau de chaînes["xls", "xlsb", "xltm", "xlt", "fods", "ots", "sxc", "xml", "et", "ett"]
Définit les types de fichiers qu'on pourra modifier dans l'éditeur des classeurs.tableau de chaînes["xlsx", "xltx", "xlsm", "ods", "csv"]
Définit les types de fichiers qu'on pourra visionner dans l'éditeur des présentations.tableau de chaînes["ppt", "ppsx", "ppsm", "pps", "potm", "pot", "fodp", "otp", "sxi", "dps", "dpt"]
Définit les types de fichiers qu'on pourra modifier dans l'éditeur des présentations.tableau de chaînes["pptx", "potx", "pptm", "odp"]
Définit la clé publique que le navigateur utilise pour vérifier la clé privée.chaîne"BgIAAACkAABSU0ExAAgAAAEAAQBpTpiJQ2hD8plpGTfEEmcq4IKyr31HikXpuVSBraMfqyodn2PGXBJ3daNSmdPOc0Nz4HO9Auljn8YYXDPBdpiABptSKvEDPF23Q+Qytg0+vCRyondyBcW91w7KLzXce3fnk8ZfJ8QtbZPL9m11wJIWZueQF+l0HKYx4lty+nccbCanytFTADkGQ3SnmExGEF3rBz6I9+OcrDDK9NKPJgEmCiuyei/d4XbPgKls3EIG0h38X5mVF2VytfWm2Yu850B6z3N4MYhj4b4vsYT62zEC4pMRUeb8dIBy4Jsmr3avtmeO00MUH6DVyPC8nirixj2YIOPKk13CdVqGDSXA3cvl"
Définit le module RSA codé en Base64 qui est utilisé pour récupérer la clé publique.chaîne"5cvdwCUNhlp1wl2TyuMgmD3G4iqevPDI1aAfFEPTjme2r3avJpvgcoB0/OZREZPiAjHb+oSxL77hY4gxeHPPekDnvIvZpvW1cmUXlZlf/B3SBkLcbKmAz3bh3S96sisKJgEmj9L0yjCsnOP3iD4H610QRkyYp3RDBjkAU9HKpyZsHHf6clviMaYcdOkXkOdmFpLAdW32y5NtLcQnX8aT53d73DUvyg7XvcUFcneiciS8Pg22MuRDt108A/EqUpsGgJh2wTNcGMafY+kCvXPgc0NzztOZUqN1dxJcxmOfHSqrH6OtgVS56UWKR32vsoLgKmcSxDcZaZnyQ2hDiZhOaQ=="
Définit l'exposant RSA codé en Base64 qui est utilisé pour récupérer la clé publique.chaîne"65537"
Définit la clé privée qui va signer la demande du Serveur de documents (Document Server).chaîne"-----BEGIN PRIVATE KEY-----\nMIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQDly93AJQ2GWnXC\nXZPK4yCYPcbiKp688MjVoB8UQ9OOZ7avdq8mm+BygHT85lERk+ICMdv6hLEvvuFj\niDF4c896QOe8i9mm9bVyZReVmV/8HdIGQtxsqYDPduHdL3qyKwomASaP0vTKMKyc\n4/eIPgfrXRBGTJindEMGOQBT0cqnJmwcd/pyW+Ixphx06ReQ52YWksB1bfbLk20t\nxCdfxpPnd3vcNS/KDte9xQVyd6JyJLw+DbYy5EO3XTwD8SpSmwaAmHbBM1wYxp9j\n6QK9c+BzQ3PO05lSo3V3ElzGY58dKqsfo62BVLnpRYpHfa+yguAqZxLENxlpmfJD\naEOJmE5pAgMBAAECggEALiL+RKOr0Xu8BOgQ0j1DwA03LxVrhXe6etmJI+JySTcd\ngKENjWziZVrRIi2DvUm5qMMl7WhSwslKK1eexxZJY7xASqSxcEoIwgz17T07/jxm\nfIdUBiUKDZ1Kv8PWmIr3oKW+fkXWi/m1zlIe0qXRpTmsGNEsHQLEqi0rmaiXTXOR\n/2Ldwi6kZR3sWFx97YS4Mx/pueGJTXEai6AVEZzN5Gog6xD8HXR1Rvq+hhd+MocG\nfnU4HgilKRfoJlWd9FOscgSufKG0L3ViO4fSKU46l5aullDYUk5ECMWiwuKSqSE7\nqD45jI3mbOre7S4u3S3TWdD3lzwiXL49LdwKlEC4mQKBgQD0sLr0GH4Wr+QX2xJE\nuA/Cb8QW41l8iSCBTRZZR/sJOd+o3rbcVidlzO/EbZblXG4ZPDmRjgBCGKIP5EZi\n0DsL+Wv32WOo44LpxJGhqExbm0H1iZ1zZ97l0P8fvIhHE42gmaLToOIGDhPSXGvv\nzlqOHbGbq4jsERc1jp1bej5q6wKBgQDwaueIc4pRchH98QYidcyr8Vwg9KhbnfYX\ny3W4RPlZtBdF34iJaio+ASzugo/zy1RTcVrsCskYWXyKDUQz1yu0iCng+fDCUnTm\nXGmEoEGNhk4vTJOt7hBav1/Ja/dUipGf6mXUuanwJ0e+1/Et/B0ah5X1Um5AyNZI\nM+SyRz3u+wKBgQCjvtUNXoqaghCBCmB6TjZ1prexnWkYFugCv2SSUMIk1W7gIlJ6\ntsjcrj1R1Qii6qzfBFd+GWoA0V06h0e2/qRVCg//p6GytrW33IycgvS+ZPLJ7tLI\nFR2r66WfRlpoPiSL8eRt/P7kkG0hXCn7K7ub2TEu/Ka/W1yNwad6PR8iCwKBgQC8\nXcZSrtQsxAc8w99emJVoEo9wcsCGJ9ltA0iUu9XyZpvlbyJ3J+s48YrWxQ0sop7L\nUgE+96Rfo51kPMi3JVtk81p8ntf4KMrWwokaFMXHsPcJMCJ1IBVIRLE0C5eZcYhv\nlyN57I4tT1lzOZYJxYK4Cot/zrn7oF/j6mTBGfh4iQKBgQCiJMUxRz01/czH/XSX\ngo3dVbHQ4FEOufWnE3Eb93S8r0/eq1RM118rb0TqzuiadW2xYDU4nucWQlrlmq0d\nFY/m+Hy97pqyk6jmoU5I/D+ssBIoYHWLnH9/xfvDEk2JGSJSHtzu0D4EDC/rgQ49\nMbYsO5oUrF8tPlhj5vzbf3GKLA==\n-----END PRIVATE KEY-----\n"
Définit la clé publique ancienne que le navigateur avait utilisé pour vérifier la clé privée.chaîne"BgIAAACkAABSU0ExAAgAAAEAAQBpTpiJQ2hD8plpGTfEEmcq4IKyr31HikXpuVSBraMfqyodn2PGXBJ3daNSmdPOc0Nz4HO9Auljn8YYXDPBdpiABptSKvEDPF23Q+Qytg0+vCRyondyBcW91w7KLzXce3fnk8ZfJ8QtbZPL9m11wJIWZueQF+l0HKYx4lty+nccbCanytFTADkGQ3SnmExGEF3rBz6I9+OcrDDK9NKPJgEmCiuyei/d4XbPgKls3EIG0h38X5mVF2VytfWm2Yu850B6z3N4MYhj4b4vsYT62zEC4pMRUeb8dIBy4Jsmr3avtmeO00MUH6DVyPC8nirixj2YIOPKk13CdVqGDSXA3cvl"
Définit le module RSA ancien codé en Base64 qui était utilisé pour récupérer la clé publique.chaîne"5cvdwCUNhlp1wl2TyuMgmD3G4iqevPDI1aAfFEPTjme2r3avJpvgcoB0/OZREZPiAjHb+oSxL77hY4gxeHPPekDnvIvZpvW1cmUXlZlf/B3SBkLcbKmAz3bh3S96sisKJgEmj9L0yjCsnOP3iD4H610QRkyYp3RDBjkAU9HKpyZsHHf6clviMaYcdOkXkOdmFpLAdW32y5NtLcQnX8aT53d73DUvyg7XvcUFcneiciS8Pg22MuRDt108A/EqUpsGgJh2wTNcGMafY+kCvXPgc0NzztOZUqN1dxJcxmOfHSqrH6OtgVS56UWKR32vsoLgKmcSxDcZaZnyQ2hDiZhOaQ=="
Définit l'exposant RSA ancien codé en Base64 qui était utilisé pour récupérer la clé publique.chaîne"65537"
Définit la clé privée ancienne qui signait la demande du Serveur de documents.chaîne"-----BEGIN PRIVATE KEY-----\nMIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQDly93AJQ2GWnXC\nXZPK4yCYPcbiKp688MjVoB8UQ9OOZ7avdq8mm+BygHT85lERk+ICMdv6hLEvvuFj\niDF4c896QOe8i9mm9bVyZReVmV/8HdIGQtxsqYDPduHdL3qyKwomASaP0vTKMKyc\n4/eIPgfrXRBGTJindEMGOQBT0cqnJmwcd/pyW+Ixphx06ReQ52YWksB1bfbLk20t\nxCdfxpPnd3vcNS/KDte9xQVyd6JyJLw+DbYy5EO3XTwD8SpSmwaAmHbBM1wYxp9j\n6QK9c+BzQ3PO05lSo3V3ElzGY58dKqsfo62BVLnpRYpHfa+yguAqZxLENxlpmfJD\naEOJmE5pAgMBAAECggEALiL+RKOr0Xu8BOgQ0j1DwA03LxVrhXe6etmJI+JySTcd\ngKENjWziZVrRIi2DvUm5qMMl7WhSwslKK1eexxZJY7xASqSxcEoIwgz17T07/jxm\nfIdUBiUKDZ1Kv8PWmIr3oKW+fkXWi/m1zlIe0qXRpTmsGNEsHQLEqi0rmaiXTXOR\n/2Ldwi6kZR3sWFx97YS4Mx/pueGJTXEai6AVEZzN5Gog6xD8HXR1Rvq+hhd+MocG\nfnU4HgilKRfoJlWd9FOscgSufKG0L3ViO4fSKU46l5aullDYUk5ECMWiwuKSqSE7\nqD45jI3mbOre7S4u3S3TWdD3lzwiXL49LdwKlEC4mQKBgQD0sLr0GH4Wr+QX2xJE\nuA/Cb8QW41l8iSCBTRZZR/sJOd+o3rbcVidlzO/EbZblXG4ZPDmRjgBCGKIP5EZi\n0DsL+Wv32WOo44LpxJGhqExbm0H1iZ1zZ97l0P8fvIhHE42gmaLToOIGDhPSXGvv\nzlqOHbGbq4jsERc1jp1bej5q6wKBgQDwaueIc4pRchH98QYidcyr8Vwg9KhbnfYX\ny3W4RPlZtBdF34iJaio+ASzugo/zy1RTcVrsCskYWXyKDUQz1yu0iCng+fDCUnTm\nXGmEoEGNhk4vTJOt7hBav1/Ja/dUipGf6mXUuanwJ0e+1/Et/B0ah5X1Um5AyNZI\nM+SyRz3u+wKBgQCjvtUNXoqaghCBCmB6TjZ1prexnWkYFugCv2SSUMIk1W7gIlJ6\ntsjcrj1R1Qii6qzfBFd+GWoA0V06h0e2/qRVCg//p6GytrW33IycgvS+ZPLJ7tLI\nFR2r66WfRlpoPiSL8eRt/P7kkG0hXCn7K7ub2TEu/Ka/W1yNwad6PR8iCwKBgQC8\nXcZSrtQsxAc8w99emJVoEo9wcsCGJ9ltA0iUu9XyZpvlbyJ3J+s48YrWxQ0sop7L\nUgE+96Rfo51kPMi3JVtk81p8ntf4KMrWwokaFMXHsPcJMCJ1IBVIRLE0C5eZcYhv\nlyN57I4tT1lzOZYJxYK4Cot/zrn7oF/j6mTBGfh4iQKBgQCiJMUxRz01/czH/XSX\ngo3dVbHQ4FEOufWnE3Eb93S8r0/eq1RM118rb0TqzuiadW2xYDU4nucWQlrlmq0d\nFY/m+Hy97pqyk6jmoU5I/D+ssBIoYHWLnH9/xfvDEk2JGSJSHtzu0D4EDC/rgQ49\nMbYsO5oUrF8tPlhj5vzbf3GKLA==\n-----END PRIVATE KEY-----\n"
Définit l'intervalle d'actualisation du verrouillage d'un fichier en minutes en remettant le minuteur d'expiration à 30 minutes.chaîne"10m"
Définit les propriétés des gestionnaires fictifs pour des tests de résistance.objet
Indique si les gestionnaires fictifs sont activés.booleanfalse
Indique le chemin d'accès factice du fichier échantillon.chaîne""

Tous ces paramètres définissent la configuration du protocole WOPI.

Exemple
"wopi": {
    "enable": false,
    "host" : "",
    "htmlTemplate" : "../../web-apps/apps/api/wopi",
    "wopiZone" : "external-http",
    "favIconUrlWord" : "/web-apps/apps/documenteditor/main/resources/img/favicon.ico",
    "favIconUrlCell" : "/web-apps/apps/spreadsheeteditor/main/resources/img/favicon.ico",
    "favIconUrlSlide" : "/web-apps/apps/presentationeditor/main/resources/img/favicon.ico",
    "favIconUrlPdf" : "/web-apps/apps/pdfeditor/main/resources/img/favicon.ico",
    "fileInfoBlockList" : ["FileUrl"],
    "pdfView": ["djvu", "xps", "oxps"],
    "pdfEdit": ["pdf"],
    "forms": ["FileUrl"],
    "wordView": ["doc", "dotm", "dot", "fodt", "ott", "rtf", "mht", "mhtml", "html", "htm", "xml", "epub", "fb2", "sxw", "stw", "wps", "wpt", "docxf", "oform"] ["docx", "dotx", "docm", "odt", "txt"],
    "cellView": ["xls", "xlsb", "xltm", "xlt", "fods", "ots", "sxc", "xml", "et", "ett"],
    "cellEdit": ["xlsx", "xltx", "xlsm", "ods", "csv"],
    "slideView": ["ppt", "ppsx", "ppsm", "pps", "potm", "pot", "fodp", "otp", "sxi", "dps", "dpt"],
    "slideEdit": ["pptx", "potx", "pptm", "odp"],
    "publicKey": "BgIAAACkAABSU0ExAAgAAAEAAQBpTpiJQ2hD8plpGTfEEmcq4IKyr31HikXpuVSBraMfqyodn2PGXBJ3daNSmdPOc0Nz4HO9Auljn8YYXDPBdpiABptSKvEDPF23Q+Qytg0+vCRyondyBcW91w7KLzXce3fnk8ZfJ8QtbZPL9m11wJIWZueQF+l0HKYx4lty+nccbCanytFTADkGQ3SnmExGEF3rBz6I9+OcrDDK9NKPJgEmCiuyei/d4XbPgKls3EIG0h38X5mVF2VytfWm2Yu850B6z3N4MYhj4b4vsYT62zEC4pMRUeb8dIBy4Jsmr3avtmeO00MUH6DVyPC8nirixj2YIOPKk13CdVqGDSXA3cvl",
    "modulus": "5cvdwCUNhlp1wl2TyuMgmD3G4iqevPDI1aAfFEPTjme2r3avJpvgcoB0/OZREZPiAjHb+oSxL77hY4gxeHPPekDnvIvZpvW1cmUXlZlf/B3SBkLcbKmAz3bh3S96sisKJgEmj9L0yjCsnOP3iD4H610QRkyYp3RDBjkAU9HKpyZsHHf6clviMaYcdOkXkOdmFpLAdW32y5NtLcQnX8aT53d73DUvyg7XvcUFcneiciS8Pg22MuRDt108A/EqUpsGgJh2wTNcGMafY+kCvXPgc0NzztOZUqN1dxJcxmOfHSqrH6OtgVS56UWKR32vsoLgKmcSxDcZaZnyQ2hDiZhOaQ==",
    "exponent": 65537,
    "privateKey": "-----BEGIN PRIVATE KEY-----\nMIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQDly93AJQ2GWnXC\nXZPK4yCYPcbiKp688MjVoB8UQ9OOZ7avdq8mm+BygHT85lERk+ICMdv6hLEvvuFj\niDF4c896QOe8i9mm9bVyZReVmV/8HdIGQtxsqYDPduHdL3qyKwomASaP0vTKMKyc\n4/eIPgfrXRBGTJindEMGOQBT0cqnJmwcd/pyW+Ixphx06ReQ52YWksB1bfbLk20t\nxCdfxpPnd3vcNS/KDte9xQVyd6JyJLw+DbYy5EO3XTwD8SpSmwaAmHbBM1wYxp9j\n6QK9c+BzQ3PO05lSo3V3ElzGY58dKqsfo62BVLnpRYpHfa+yguAqZxLENxlpmfJD\naEOJmE5pAgMBAAECggEALiL+RKOr0Xu8BOgQ0j1DwA03LxVrhXe6etmJI+JySTcd\ngKENjWziZVrRIi2DvUm5qMMl7WhSwslKK1eexxZJY7xASqSxcEoIwgz17T07/jxm\nfIdUBiUKDZ1Kv8PWmIr3oKW+fkXWi/m1zlIe0qXRpTmsGNEsHQLEqi0rmaiXTXOR\n/2Ldwi6kZR3sWFx97YS4Mx/pueGJTXEai6AVEZzN5Gog6xD8HXR1Rvq+hhd+MocG\nfnU4HgilKRfoJlWd9FOscgSufKG0L3ViO4fSKU46l5aullDYUk5ECMWiwuKSqSE7\nqD45jI3mbOre7S4u3S3TWdD3lzwiXL49LdwKlEC4mQKBgQD0sLr0GH4Wr+QX2xJE\nuA/Cb8QW41l8iSCBTRZZR/sJOd+o3rbcVidlzO/EbZblXG4ZPDmRjgBCGKIP5EZi\n0DsL+Wv32WOo44LpxJGhqExbm0H1iZ1zZ97l0P8fvIhHE42gmaLToOIGDhPSXGvv\nzlqOHbGbq4jsERc1jp1bej5q6wKBgQDwaueIc4pRchH98QYidcyr8Vwg9KhbnfYX\ny3W4RPlZtBdF34iJaio+ASzugo/zy1RTcVrsCskYWXyKDUQz1yu0iCng+fDCUnTm\nXGmEoEGNhk4vTJOt7hBav1/Ja/dUipGf6mXUuanwJ0e+1/Et/B0ah5X1Um5AyNZI\nM+SyRz3u+wKBgQCjvtUNXoqaghCBCmB6TjZ1prexnWkYFugCv2SSUMIk1W7gIlJ6\ntsjcrj1R1Qii6qzfBFd+GWoA0V06h0e2/qRVCg//p6GytrW33IycgvS+ZPLJ7tLI\nFR2r66WfRlpoPiSL8eRt/P7kkG0hXCn7K7ub2TEu/Ka/W1yNwad6PR8iCwKBgQC8\nXcZSrtQsxAc8w99emJVoEo9wcsCGJ9ltA0iUu9XyZpvlbyJ3J+s48YrWxQ0sop7L\nUgE+96Rfo51kPMi3JVtk81p8ntf4KMrWwokaFMXHsPcJMCJ1IBVIRLE0C5eZcYhv\nlyN57I4tT1lzOZYJxYK4Cot/zrn7oF/j6mTBGfh4iQKBgQCiJMUxRz01/czH/XSX\ngo3dVbHQ4FEOufWnE3Eb93S8r0/eq1RM118rb0TqzuiadW2xYDU4nucWQlrlmq0d\nFY/m+Hy97pqyk6jmoU5I/D+ssBIoYHWLnH9/xfvDEk2JGSJSHtzu0D4EDC/rgQ49\nMbYsO5oUrF8tPlhj5vzbf3GKLA==\n-----END PRIVATE KEY-----\n",
    "publicKeyOld": "BgIAAACkAABSU0ExAAgAAAEAAQBpTpiJQ2hD8plpGTfEEmcq4IKyr31HikXpuVSBraMfqyodn2PGXBJ3daNSmdPOc0Nz4HO9Auljn8YYXDPBdpiABptSKvEDPF23Q+Qytg0+vCRyondyBcW91w7KLzXce3fnk8ZfJ8QtbZPL9m11wJIWZueQF+l0HKYx4lty+nccbCanytFTADkGQ3SnmExGEF3rBz6I9+OcrDDK9NKPJgEmCiuyei/d4XbPgKls3EIG0h38X5mVF2VytfWm2Yu850B6z3N4MYhj4b4vsYT62zEC4pMRUeb8dIBy4Jsmr3avtmeO00MUH6DVyPC8nirixj2YIOPKk13CdVqGDSXA3cvl",
    "modulusOld": "5cvdwCUNhlp1wl2TyuMgmD3G4iqevPDI1aAfFEPTjme2r3avJpvgcoB0/OZREZPiAjHb+oSxL77hY4gxeHPPekDnvIvZpvW1cmUXlZlf/B3SBkLcbKmAz3bh3S96sisKJgEmj9L0yjCsnOP3iD4H610QRkyYp3RDBjkAU9HKpyZsHHf6clviMaYcdOkXkOdmFpLAdW32y5NtLcQnX8aT53d73DUvyg7XvcUFcneiciS8Pg22MuRDt108A/EqUpsGgJh2wTNcGMafY+kCvXPgc0NzztOZUqN1dxJcxmOfHSqrH6OtgVS56UWKR32vsoLgKmcSxDcZaZnyQ2hDiZhOaQ==",
    "exponentOld": 65537,
    "privateKeyOld": "-----BEGIN PRIVATE KEY-----\nMIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQDly93AJQ2GWnXC\nXZPK4yCYPcbiKp688MjVoB8UQ9OOZ7avdq8mm+BygHT85lERk+ICMdv6hLEvvuFj\niDF4c896QOe8i9mm9bVyZReVmV/8HdIGQtxsqYDPduHdL3qyKwomASaP0vTKMKyc\n4/eIPgfrXRBGTJindEMGOQBT0cqnJmwcd/pyW+Ixphx06ReQ52YWksB1bfbLk20t\nxCdfxpPnd3vcNS/KDte9xQVyd6JyJLw+DbYy5EO3XTwD8SpSmwaAmHbBM1wYxp9j\n6QK9c+BzQ3PO05lSo3V3ElzGY58dKqsfo62BVLnpRYpHfa+yguAqZxLENxlpmfJD\naEOJmE5pAgMBAAECggEALiL+RKOr0Xu8BOgQ0j1DwA03LxVrhXe6etmJI+JySTcd\ngKENjWziZVrRIi2DvUm5qMMl7WhSwslKK1eexxZJY7xASqSxcEoIwgz17T07/jxm\nfIdUBiUKDZ1Kv8PWmIr3oKW+fkXWi/m1zlIe0qXRpTmsGNEsHQLEqi0rmaiXTXOR\n/2Ldwi6kZR3sWFx97YS4Mx/pueGJTXEai6AVEZzN5Gog6xD8HXR1Rvq+hhd+MocG\nfnU4HgilKRfoJlWd9FOscgSufKG0L3ViO4fSKU46l5aullDYUk5ECMWiwuKSqSE7\nqD45jI3mbOre7S4u3S3TWdD3lzwiXL49LdwKlEC4mQKBgQD0sLr0GH4Wr+QX2xJE\nuA/Cb8QW41l8iSCBTRZZR/sJOd+o3rbcVidlzO/EbZblXG4ZPDmRjgBCGKIP5EZi\n0DsL+Wv32WOo44LpxJGhqExbm0H1iZ1zZ97l0P8fvIhHE42gmaLToOIGDhPSXGvv\nzlqOHbGbq4jsERc1jp1bej5q6wKBgQDwaueIc4pRchH98QYidcyr8Vwg9KhbnfYX\ny3W4RPlZtBdF34iJaio+ASzugo/zy1RTcVrsCskYWXyKDUQz1yu0iCng+fDCUnTm\nXGmEoEGNhk4vTJOt7hBav1/Ja/dUipGf6mXUuanwJ0e+1/Et/B0ah5X1Um5AyNZI\nM+SyRz3u+wKBgQCjvtUNXoqaghCBCmB6TjZ1prexnWkYFugCv2SSUMIk1W7gIlJ6\ntsjcrj1R1Qii6qzfBFd+GWoA0V06h0e2/qRVCg//p6GytrW33IycgvS+ZPLJ7tLI\nFR2r66WfRlpoPiSL8eRt/P7kkG0hXCn7K7ub2TEu/Ka/W1yNwad6PR8iCwKBgQC8\nXcZSrtQsxAc8w99emJVoEo9wcsCGJ9ltA0iUu9XyZpvlbyJ3J+s48YrWxQ0sop7L\nUgE+96Rfo51kPMi3JVtk81p8ntf4KMrWwokaFMXHsPcJMCJ1IBVIRLE0C5eZcYhv\nlyN57I4tT1lzOZYJxYK4Cot/zrn7oF/j6mTBGfh4iQKBgQCiJMUxRz01/czH/XSX\ngo3dVbHQ4FEOufWnE3Eb93S8r0/eq1RM118rb0TqzuiadW2xYDU4nucWQlrlmq0d\nFY/m+Hy97pqyk6jmoU5I/D+ssBIoYHWLnH9/xfvDEk2JGSJSHtzu0D4EDC/rgQ49\nMbYsO5oUrF8tPlhj5vzbf3GKLA==\n-----END PRIVATE KEY-----\n",
    "refreshLockInterval": "10m",
    "dummy": {
        "enable": false,
        "sampleFilePath": ""
    }
}

Clients

ParamètreDescriptionTypeDéfaut
Définit le référentiel à restreindre les fichiers que ONLYOFFICE Docs puisse accéder.chaîne""
Définit le nom du domaine de client.chaîne""
Définit le nom du fichier de configuration dans le dossier client à remplacer default.json. Ceci est utilisé en mode mutualisé pour initialiser les paramètres spécifiques du client (wopi, ipfilter, jwt secret, etc.). chaîne"config.json"
Définit le nom du fichier .pem où la clé secrète du client est stockée.chaîne"secret.key"
Définit le nom du fichier où la licence du client est stockée.chaîne"license.lic"
Indique le nom de domaine du client par défaut.chaîne"localhost"
Définit les paramètres du mémoire cache pour lire la licence et la clé secrète mutualisées.objet
Définit la durée de vie de chaque élément du mémoire cache généré (exprimé en secondes).entier300
Définit l'intervalle entre les vérifications de suppression automatique (exprimé en secondes).entier60
Indique si les variables mises en cache seront clonées. vrai, on va créer une copie de la variable mise en cache. faux, on va sauvegarder uniquement la référence.booleanfalse

Ce sont les paramètres pour configurer les propriétés de clients en travailler en mode mutualisé.

Exemple
"tenants": {
    "baseDir" : "",
    "baseDomain" : "",
    "filenameConfig" : "config.json",
    "filenameSecret" : "secret.key",
    "filenameLicense" : "license.lic",
    "defaultTenant" : "localhost",
    "cache": {
        "stdTTL": 300,
        "checkperiod": 60,
        "useClones": false
    },
}

Demandes externes

ParamètreDescriptionTypeDéfaut
Définit les adresses IP autorisées pour des demandes directes.objet
Définit la liste des adresses IP de confiance pour des demandes directes.liste[]
Indique si les adresses IP de confiance sont incluses dans JWT.booleantrue
Définit les paramètres de la demande externe.objet
Indique si les demandes externes sont autorisées.booleantrue
Indique si l'adresse IP privée sera bloquée.booleantrue
Définit l'URL du proxy.chaîne""
Définit les paramètres de l'authentification du proxy.objet
Définit le nom d'utilisateur de l'authentification du proxy.chaîne""
Définit le mot de passe de l'authentification du proxy.chaîne""
Définit les en-têtes du proxy.objet{}

Ces paramètres définissent la configuration des demandes externes.

Exemple
"externalRequest": {
    "directIfIn" : {
        "allowList": [],
        "jwtToken": true
    },
    "action": {
        "allow": true,
        "blockPrivateIP": true,
        "proxyUrl": "",
        "proxyUser": {
            "username": "",
            "password": ""
        },
        "proxyHeaders": {
        }
    }
}

Services du Serveur de documents

Ces paramètres définissent la configuration des services du Serveur de documents.

ParamètreDescriptionTypeDéfaut
Définit les paramètres d'une session de coédition.objet

Serveur

ParamètreDescriptionTypeDéfaut
Définit le port d'écoute du serveur.entier8000
Définit le nombre de threads de travail par UCT.entier1
Définit le mode de serveur.chaîne"development"
Définit la taille maximale des fichiers temporaires téléchargées pendant chaque processus (exprimé en octets).entier104857600
Définit la taille maximale de toutes images téléchargées pendant chaque processus (exprimé en octets).entier26214400
Définit un délai d'attente de téléchargement des images.objet

Définit les périodes d'attentes suivantes:

  • délai d'attente de lecture - le temps d'attente des en-têtes de réponse du serveur (et initier le corps de réponse) avant d'annuler la demande;
  • délai d'attente de connexion - ferme la connexion de socket après un certain temps d'inactivité. Veuillez noter que le délai d'attente qui dépasse les paramètres d'expiration de TCP/IP du système d'exploitation n'aura aucun effet.

Ce paramètre est envoyé au module npm.

chaîne"2m"
Définit le cycle de vie des demandes - la période allant du début jusqu'à la fin du téléchargement.chaîne"2m"
Définit le paramètres d'attente de rappel.objet

Définit les périodes d'attentes suivantes:

  • délai d'attente de lecture - le temps d'attente des en-têtes de réponse du serveur (et initier le corps de réponse) avant d'annuler la demande;
  • délai d'attente de connexion - ferme la connexion de socket après un certain temps d'inactivité. Veuillez noter que le délai d'attente qui dépasse les paramètres d'expiration de TCP/IP du système d'exploitation n'aura aucun effet.

Ce paramètre est envoyé au module npm.

chaîne"10m"
Définit le délai d'attente du cycle de vie d'une demande.chaîne"10m"
Définit le chemin d'envoi une demande de vérification de l'état.chaîne"../public/healthcheck.docx"
Définit le délai de l'attente du début de conversion (exprimé en secondes) après la fermeture du fichier modifié.entier5000
Indique si le singleton peut être modifié.booleanfalse
Définit le dossier où tous les fichiers oubliés sont stockés.chaîne"forgotten"
Définit le nom du fichier oublié.chaîne"output"
Définit la taille maximale des modifications de demande.entier20000
Indique si les fichiers protégés par un mot de passe sont ouvrables.booleantrue
Définit si les utilisateurs anonymes ont accès à l'éditeur ou à lecteur en direct.booleantrue
Définit le stockage des données de l'éditeur. Les valeurs d'arguments possibles: "editorDataMemory", "".chaîne"editorDataRedis"
Définit le stockage des données de l'éditeur pour calculer la licence et les statistiques (mémoire local ou redis). Les valeurs possibles sont "editorDataMemory", "editorDataRedis", ou "". La valeur par défault "" signifie que le paramètre utilisé est editorDataStorage. Ce paramètres est principalement utilisé pour des volumes partagés en cluster.chaîne""
Définit si le fichier d'assemblage est enregistré au format original.booleantrue
Définit le chemin vers le nouveau modèle du fichier si le fichier reçu par un lien a une taille de 0 octet.chaîne"../../document-templates/new"
Définit les extensions autorisées à être téléchargées via le gestionnaire downloadFile.tableau de chaînes["pdf", "xlsx"]
Définit si les paramètres du jeton requis seront validés. C'est nécessaire pour des raisons de sécurité. Par exemple, le jeton de conversion ne sera pas utilisé pour ouvrir le document.booleantrue
Définit si on pourra forcer la sauvegarde du fichier sans aucune modification en cliquant sur le bouton Enregistrer.booleanfalse

Ces paramètres définissent la configuration du serveur.

Exemple
"services": {
    "CoAuthoring": {
        "server": {
            "port": 8000,
            "workerpercpu": 1,
            "mode": "development",
            "limits_tempfile_upload": 104857600,
            "limits_image_size": 26214400,
            "limits_image_download_timeout": {
                "connectionAndInactivity": "2m",
                "wholeCycle": "2m"
            },
            "callbackRequestTimeout": {
                "connectionAndInactivity": "10m",
                "wholeCycle": "10m"
            },
            "healthcheckfilepath": "../public/healthcheck.docx",
            "savetimeoutdelay": 5000,
            "edit_singleton": false,
            "forgottenfiles": "forgotten",
            "forgottenfilesname": "output",
            "maxRequestChanges": 20000,
            "openProtectedFile": true,
            "isAnonymousSupport": true,
            "editorDataStorage": "editorDataRedis",
            "editorStatStorage": "",
            "assemblyFormatAsOrigin": true,
            "newFileTemplate" : "../../document-templates/new",
            "downloadFileAllowExt": ["pdf", "xlsx"],
            "tokenRequiredParams": true,
            "forceSaveUsingButtonWithoutChanges": false
        }
    }
}

Demande par défaut

ParamètreDescriptionTypeDéfaut
Définit les en-têtes des demandes HTTP par défaut.objet
Définit l'en-tête de demande Agent utilisateur par défaut.chaîne"Node.js/6.13"
Définit l'en-tête de demande de Connexion par défaut.chaîne"Keep-Alive"
Définit si l'en-tête Accepter-Encodage est ajouté pour demander au serveur des codages de contenu compressé (si n'est pas encore disponible) et pour décoder des codages pris en charge dans la réponse.booleantrue
Définit si le serveur de documents va vérifier les certificats.booleantrue

Tous ces paramètres définissent la configuration des demandes par défaut.

Exemple
"services": {
    "CoAuthoring": {
        "requestDefaults": {
            "headers": {
                "User-Agent": "Node.js/6.13",
                "Connection": "Keep-Alive"
            },
            "gzip": true,
            "rejectUnauthorized": true
        }
    }
}

Assemblage automatique

ParamètreDescriptionTypeDéfaut
Indique si la sauvegarde forcée est activée.booleanfalse
Définit l'intervalle de temps exprimée en minutes pour forcer le lancement automatique d'une sauvegarde.chaîne"5m"
Définit le délai exprimé en minutes entre les intervalles.chaîne"1m"

Tous ces paramètres définissent la configuration de la sauvegarde forcée automatique.

Le lancement automatique d'une sauvegarde sera forcé uniquement une fois des modifications ont été apportées au document. La sauvegarde ne sera pas forcée pour les versions vierges. En outre, la gestion des versions doit être activée pour du côté du système de gestion des documents pour que cette fonctionnalité fonctionne.
Exemple
"services": {
    "CoAuthoring": {
        "autoAssembly": {
            "enable": false,
            "interval": "5m",
            "step": "1m"
        }
    }
}

Outils

ParamètreDescriptionTypeDéfaut
Définit le répertoire où toutes les polices sont stockés.chaîne"null"
Définit les modèles de recherches des fichiers de polices avec les extensions appropriées.chaîne"*.ttf;*.ttc;*.otf"
Définit les formats d'images pris en charge pour le téléchargement.chaîne"jpg;jpeg;jpe;png;gif;bmp;svg;tiff;tif"

Ces paramètres définissent les outils de configuration.

Exemple
"services": {
    "CoAuthoring": {
        "utils": {
            "utils_common_fontdir": "null",
            "utils_fonts_search_patterns": "*.ttf;*.ttc;*.otf",
            "limits_image_types_upload": "jpg;jpeg;jpe;png;gif;bmp;svg;tiff;tif"
        }
    }
}

SQL

ParamètreDescriptionTypeDéfaut
Définit le type de la base de données (postgres, mariadb or mysql).chaîne"postgres"
Définit le nom de la table de base de données où toutes les modifications apportées au document sont stockées.chaîne"doc_changes"
Définit le nom de la table de base de données où le résultat de la requête est stocké.chaîne"task_result"
Définit l'hôte du serveur de la base de données (le nom de l'hôte ou l'adresse IP).chaîne"localhost"
Définit le port d'écoute du serveur de la base de données.entier5432
Définit le nom de la base de données qui sera créée lors du lancement de l'image.chaîne"onlyoffice"
Définit le nouveau nom du utilisateur qui possède tous les droits au niveau d'une base de données.chaîne"onlyoffice"
Définit le mot de passe défini sur le compte de la base de données.chaîne"onlyoffice"
Définit le jeu de caractères propre à la base de données.chaîne"utf8"
Définit le nombre maximum de connexions d'utilisateurs simultanées au serveur de la base de données.entier10
Définit la limite de taille aux données qu'on pourra envoyer dans une demande.entier1048575
Définit les paramètres qui peuvent être passés directement à la bibliothèque de pools de nœud-postgres .objet
Indique le nombre de millisecondes pendant lequel le client doit rester inactif dans le pool sans extrait avant la déconnexion du backend et le rejet. Définissez 0 pour désactiver la déconnexion automatique des clients inactifs.entier30000
Définit la durée de vie maximale en secondes.entier60000
Indique le délai d'expiration des instructions de requête en millisecondes.entier60000
Indique le délai d'expiration de l'appel de requête en millisecondes.entier60000
Définit le nombre maximal de millisecondes d'attente pour une connexion.entier60000
Définit les paramètres de la base de données Dameng.objet
Indique si les noms de colonnes sont en majuscules.booleanfalse
Définit la casse des noms de colonnes.chaîne"lower"
Définit le nombre maximal de millisecondes d'attente pour une connexion.entier60000
Indique si le chiffrement connexion est activée.booleanfalse
Définit le fuseau horaire local.entier0
Définit le délai d'inactivité connexions en secondes (qui ne sont pas utilisées dans le pool).entier60
Définit le nombre de millisecondes pendant lesquelles une demande de connexion du client ou du serveur peut rester sans réponse.entier60000
Définit la t la durée de vie de la file d'attente des messages avant le rejet.entier60000
Définit les paramètres de la base de données Oracle.objet
Définit le nombre maximal de secondes d'attente pour une connexion.entier60
Définit les paramètres de la base de données MS SQL.objet
Définit les options de la base de données MS SQL.objet
Définit si les données sont chiffrées lors de l'envoi sur le réseau.booleanfalse
Défint si le chiffrement doit s'appliquer aux certificats de serveur non vérifiés.booleantrue
Définit le paramètre du pool de connexion.objet
Indique le nombre de millisecondes pendant lequel le client doit rester inactif dans le pool sans extrait avant la déconnexion du backend et le rejet. Définissez 0 pour désactiver la déconnexion automatique des clients inactifs.entier30000
Définit les paramètres de connexion de la base de données MySQL (y compris les paramètres SSL) qu'on pourra transmettre directement vers le module node-mysql2.objet
Définit le nombre maximal de millisecondes d'attente pour une connexion.entier60000
Indique le délai d'expiration de l'appel de requête en millisecondes.entier60000

Ces paramètres définissent la configuration de la base de données.

Exemple
"services": {
    "CoAuthoring": {
        "sql": {
            "type": "postgres",
            "tableChanges": "doc_changes",
            "tableResult": "task_result",
            "dbHost": "localhost",
            "dbPort": 5432,
            "dbName": "onlyoffice",
            "dbUser": "onlyoffice",
            "dbPass": "onlyoffice",
            "charset": "utf8",
            "connectionlimit": 10,
            "max_allowed_packet": 1048575,
                "pgPoolExtraOptions": {
                "idleTimeoutMillis": 30000,
                "maxLifetimeSeconds": 60000,
                "statement_timeout": 60000,
                "query_timeout": 60000,
                "connectionTimeoutMillis": 60000
            },
            "damengExtraOptions": {
                "columnNameUpperCase": false,
                "columnNameCase": "lower",
                "connectTimeout": 60000,
                "loginEncrypt": false,
                "localTimezone": 0,
                "poolTimeout": 60,
                "socketTimeout": 60000,
                "queueTimeout": 60000
            },
            "oracleExtraOptions": {
                "connectTimeout": 60
            },
            "msSqlExtraOptions": {
                "options": {
                    "encrypt": false,
                    "trustServerCertificate": true
                },
                "pool": {
                    "idleTimeoutMillis": 30000
                }
            },
            "mysqlExtraOptions": {
                "connectTimeout": 60000,
                "queryTimeout": 60000
            }
        }
    }
}

Redis

ParamètreDescriptionTypeDéfaut
Définit le nom de la base de données, "redis" ou "ioredis".chaîne"redis"
Définit le préfixe de nom de tous les structures Redis.chaîne"ds:"
Définit le serveur hôte de Redis (le nom de l'hôte ou l'adresse IP).chaîne"127.0.0.1"
Définit le port d'écoute du serveur de Redis.entier6379
Définit les paramètres (nom d'utilisateur, mot de passe, modules etc.) qui peuvent être passés directement à la bibliothèque de nœud-redis createClient .objet{}
Définit les paramètres (rootNodes, paramètres par défaut, modules etc.) qui peuvent être passés directement à la bibliothèque de clustering nœud-redis pour se connecter au cluster redis. Ce paramètre a la priorité plus élevée que le paramètre options pour se connecter à redis unique. objet{}
Définit les paramètres (nom d'utilisateur, mot de passe, modules etc.) qui peuvent être passés directement à la bibliothèque ioredis RedisOptions.objet
Définit si la connexion au serveur sera retardée jusqu'à ce que la première commande soit envoyée ou que redis.connect() soit appelé explicitement.booleantrue
Définit une liste des nœuds du cluster auquel vous souhaitez vous connecter qui peuvent être passés directement à la bibliothèque du cluster ioredis pour vous connecter au cluster redis. Ce paramètre a la priorité plus élevée que le paramètre options pour se connecter à redis unique. matrice[]
Définit les paramètres (clusterRetryStrategy, dnsLookup, scaleReads etc.) qui peuvent être passés directement à la bibliothèque du cluster ioredis pour se connecter au cluster redis. Ce paramètre a la priorité plus élevée que le paramètre options pour se connecter à redis unique. objet
Définit si la connexion au serveur sera retardée jusqu'à ce que la première commande soit envoyée ou que redis.connect() soit appelé explicitement.booleantrue

Ces paramètres définissent la configuration de Redis.

Exemple
"services": {
    "CoAuthoring": {
        "redis": {
            "name": "redis",
            "prefix": "ds:",
            "host": "127.0.0.1",
            "port": 6379,
            "options": {},
            "optionsCluster": {},
            "iooptions": {
                "lazyConnect": true
            },
            "iooptionsClusterNodes": [],
            "iooptionsClusterOptions": {
                "lazyConnect": true
            }
        }
    }
}

Service PubSub

ParamètreDescriptionTypeDéfaut
Définit la taille limite des modifications qu'on pourra transmettre via PubSub. Si la taille dépasse la limite, toutes les modifications seront lues depuis la base de donnée.entier1000

Ce paramètre définit la configuration du PubSub.

Exemple
"services": {
    "CoAuthoring": {
        "pubsub": {
            "maxChanges": 1000
        }
    }
}

Expiration

ParamètreDescriptionTypeDéfaut
Définit le temps de sauvegarde des verrous.entier60
Définit la la durée de vie du statut de présence de l'utilisateur.entier300
Définit la la durée de vie des verrous.entier604800
Définit le temps de changement des indices.entier86400
Définit le temps de verrouillage des documents.entier30
Définit la la durée de vie des messages.entier86400
Définit la la durée de vie de la dernière sauvegarde de succès de la base de donnée.entier604800
Définit la la durée de vie de la sauvegarde forcée de succès.entier604800
Définit la durée de vie des clôtures forcées en mode cluster ioredis.entier5000
Définit la la durée de vie de la sauvegarde de succès de la base de donnée.entier3600
Définit le début de la vérification pendant laquelle les fichiers cache sont supprimés (tout les deux minutes par défaut).chaîne"0 */2 * * * *"
Définit la la durée de vie des dossiers App_Data.entier86400
Définit le début de la vérification (à chaque heure par défaut).chaîne"00 00 */1 * * *"
Définit le nombre de dossiers cachés qu'on pourra supprimer simultanément.entier100

Définit la durée de vie d'une session inactive. Ce paramètre permet de terminer la session d'édition d'un utilisateur inactif. Celui-ci lance aussi la procédure de sauvegarde du document en mettant fin à la dernière session d'édition. Alors, ce paramètre définit le délai dans lequel la session d'édition d'un utilisateur inactif sera interrompue. Le format de valeur est "1s", "1m", "1h", "1d" etc.

Veuillez noter que par inactivité, nous entendons l'absence de toute action dans l'éditeur, y compris le mouvement du curseur.
chaîne"1h"
Définit la durée de vie d'une session de coédition.chaîne"30d"
Définit le délai d'expiration de sessionidle ou sessionabsolute ttl lors d'envoi du message d'avertissement.chaîne"2m"
Définit la durée de vie des fichiers PEM avec clés secrets.chaîne"1h"
Définit le délai de vérification de ttl des fichiers PEM.chaîne"10m"
Définit l'intervalle pendant lequel l'utilisateur pourra ouvrir le fichier encore une fois après qu'une erreur s'est produite lors de l'ouverture d'un fichier à l'aide d'une clé ancienne.chaîne"5m"
Définit la la durée de vie de la liste des utilisateurs uniques du mois.chaîne"1y"

Ces paramètres définissent les délais d'expiration.

Exemple
"services": {
    "CoAuthoring": {
        "expire": {
            "saveLock": 60,
            "presence": 300,
            "locks": 604800,
            "changeindex": 86400,
            "lockDoc": 30,
            "message": 86400,
            "lastsave": 604800,
            "forcesave": 604800,
            "forcesaveLock": 5000,
            "saved": 3600,
            "documentsCron": "0 */2 * * * *",
            "files": 86400,
            "filesCron": "00 00 */1 * * *",
            "filesremovedatonce": 100,
            "sessionidle": "1h",
            "sessionabsolute": "30d",
            "sessionclosecommand": "2m",
            "pemStdTTL": "1h",
            "pemCheckPeriod": "10m",
            "updateVersionStatus": "5m",
            "monthUniqueUsers": "1y"
        }
    }
}

Filtre IP

ParamètreDescriptionTypeDéfaut

Définit les règles du filtre IP qui comportent les paramètres suivants:

  • address - l'adresse IP de l'intégrateur. Ce paramètre comporte l'adresse IP au format X.X.X.X pour ipv4 ou au format xxxx.xxxx.xxxx.xxxx.xxxx.xxxx.xxxx.xxxx pour ipv6, le nom DNS ou le caractère générique * à remplacer tout symbole/symboles,
    type: chaîne,
    exemple: "ip_address";
  • allowed - indique si l'adresse IP est fiable,
    type: boolean,
    exemple: true.
tableau de chaînes
Indique si le filtre IP sont est utilisé dans la demande.booleanfalse
Définit le code d'erreur pour le filtre IP.entier403

Tous ces paramètres définissent la configuration du filtre IP.

Exemple
"services": {
    "CoAuthoring": {
        "ipfilter": {
            "rules": [{"address": "*", "allowed": true}],
            "useforrequest": false,
            "errorcode": 403
        }
    }
}

Agent de filtrage des demandes

ParamètreDescriptionTypeDéfaut
Définit si la connexion de l'adresse IP privée est autorisée. Ceci comprend des adresses IP privées et des adresses IP réservées.booleanfalse
Définit si la connexion de l'adresse IP méta est autorisée. L'adresse IP méta peut être 0.0.0.0 (IPv4) ou :: (IPv6) - un adresse méta acheminant une autre adresse.booleanfalse

Tous ces paramètres définissent la configuration de l'agent de filtrage des demandes.

Exemple
"services": {
    "CoAuthoring": {
        "request-filtering-agent" : {
            "allowPrivateIPAddress": false,
            "allowMetaIPAddress": false
        }
    }
}

Clé secrète

ParamètreDescriptionTypeDéfaut

Définit les paramètres de la clé secrète pour générer un jeton dans des requêtes du navigateur côté client vers ONLYOFFICE Docs:

  • string - la clé secrète,
    type: chaîne,
    exemple: "secret";
  • file - le fichier PEM où le secret est stocké,
    type: chaîne,
    exemple: "".
objet

Définit les paramètres de la clé secrète pour générer un jeton dans des requêtes HTTP entrants avec des commandes du service de stockage des documents au service de commande des documents, service de conversion des documents et service de génération des documents:

  • string - la clé secrète,
    type: chaîne,
    exemple: "secret";
  • file - le fichier PEM où le secret est stocké,
    type: chaîne,
    exemple: "".
objet

Définit les paramètres de la clé secrète pour générer un jeton dans des requêtes HTTP sortants vers callbackUrl par le service d'édition des documents:

  • string - la clé secrète,
    type: chaîne,
    exemple: "secret";
  • file - le fichier PEM où le secret est stocké,
    type: chaîne,
    exemple: "".
objet

Définit les paramètres de la clé secrète pour générer le jeton de session:

  • string - la clé secrète,
    type: chaîne,
    exemple: "secret";
  • file - le fichier PEM où le secret est stocké,
    type: chaîne,
    exemple: "".
objet

Tous ces paramètres définissent la configuration de la clé secrète.

Exemple
"services": {
    "CoAuthoring": {
        "secret": {
            "browser": {"string": "secret", "file": ""},
            "inbox": {"string": "secret", "file": ""},
            "outbox": {"string": "secret", "file": ""},
            "session": {"string": "secret", "file": ""}
        }
    }
}

Jeton

ParamètreDescriptionTypeDéfaut
Indique si les jetons est activés.objet
Définit si le jeton dans des requêtes du navigateur côté client est activé.booleanfalse
Définit si les jetons dans des requêtes HTTP sont activés.objet
Définit si le jeton dans des requêtes HTTP entrants sont activés.booleanfalse
Définit si le jeton dans des requêtes HTTP sortants sont activés.booleanfalse
Définit la configuration du jeton de navigateur.objet
Définit si le jeton de navigateur et le jeton des requêtes entrants sont identiques (true) sinon (false).booleantrue
Définit la configuration du jeton des requêtes entrants.objet
Définit l'en-tête HTTP à utiliser pour envoyer le jeton d'une requête entrante.chaîne"Authorization"
Définit le préfixe dans l'en-tête HTTP à utiliser pour envoyer le jeton d'une requête entrante.chaîne"Bearer "
Définit si le jeton est activé dans le corps de la requête entrante.booleanfalse
Définit la configuration du jeton des requêtes sortants.objet
Définit l'en-tête HTTP à utiliser pour envoyer le jeton d'une requête sortante.chaîne"Authorization"
Définit le préfixe dans l'en-tête HTTP à utiliser pour envoyer le jeton d'une requête sortante.chaîne"Bearer "
Définit un algorithme pour signer le jeton de la requête sortante.chaîne"HS256"
Définit le délai d'expiration du jeton de la requête sortante.chaîne"5m"
Définit si le jeton est activé dans le corps de la requête sortante.booleanfalse
Définit l'expression régulière comportant les URLs à exclure de la liste d'autorisation. Une chaîne vide signifie que cette option est désactivée.chaîne""
Définit la configuration du jeton de session.objet
Définit un algorithme pour signer le jeton de la session.chaîne"HS256"
Définit le délai d'expiration du jeton de session.chaîne"30d"
Définit les paramètres de vérification du jeton.objet
Définit le délai exprimé en secondes acceptable pour la différence de fuseau horaire entre les serveurs.entier60

Ces paramètres définissent la configuration du jeton.

Exemple
"services": {
    "CoAuthoring": {
        "token": {
            "enable": {
                "browser": false,
                "request": {
                    "inbox": false,
                    "outbox": false
                }
            },
            "browser": {
                "secretFromInbox": true
            },
            "inbox": {
                "header": "Authorization",
                "prefix": "Bearer ",
                "inBody": false
            },
            "outbox": {
                "header": "Authorization",
                "prefix": "Bearer ",
                "algorithm": "HS256",
                "expires": "5m",
                "inBody": false,
                "urlExclusionRegex": ""
            },
            "session": {
                "algorithm": "HS256",
                "expires": "30d"
            },
            "verifyOptions": {
                "clockTolerance": 60
            }
        }
    }
}

Modules complémentaires

ParamètreDescriptionTypeDéfaut
Indique le chemin d'accès au dossier où tous les modules complémentaires sont stockés.chaîne"/sdkjs-plugins"
Définit la liste des modules complémentaires qui s'exécutent automatiquement.liste[]

Ces paramètres définissent la configuration des modules complémentaires.

Exemple
"services": {
    "CoAuthoring": {
        "plugins": {
            "uri": "/sdkjs-plugins",
            "autostart": []
        }
    }
}

Thèmes

ParamètreDescriptionTypeDéfaut
Définit le chemin vers le dossier où se trouvent les fichiers json avec les thèmes de couleur personnalisés.chaîne"/web-apps/apps/common/main/resources/themes"

Ce paramètre définit les propriétés des thèmes de couleur personnalisés.

Exemple
"services": {
    "CoAuthoring": {
        "themes": {
            "uri": "/web-apps/apps/common/main/resources/themes"
        }
    }
}

Éditeur

ParamètreDescriptionTypeDéfaut
Indique le chemin d'accès de la vérification de l'orthographe.chaîne""
Définit les paramètres de connexion de l'éditeur au serveur.objet
Définit le nombre limité de tentatives de connexion possibles qu'un utilisateur peut effectuer.entier50
Définit le délai de tentative de connexion de l'éditeur.chaîne"2s"
Définit si les modifications du document sont sauvegardées au format binaire (true) ou au format JSON (false).booleanfalse
Définit la taille de la charge utile totale de WebSocket.chaîne"1.5MB"
Définit la limite des modifications apportées au document. Une fois la limite dépassée, une boîte de dialogue s'affichera proposant d'annulerla dernière action ou passer en mode hors connexion. Cette option est déactivée par défaut.chaîne"0mb"

Ces paramètres définissent la configuration de l'éditeur.

Exemple
"services": {
    "CoAuthoring": {
        "editor":{
            "spellcheckerUrl": "",
            "reconnection":{
                "attempts": 50,
                "delay": "2s"
            },
            "binaryChanges": false,
            "websocketMaxPayloadSize": "1.5MB",
            "maxChangesSize": "0mb"
        }
    }
}

SockJs

ParamètreDescriptionTypeDéfaut
Indique le chemin d'accès au fichier sockjs.min.js.chaîne""
Définit si CORS sera désactivé. La valeur vrau value prévient la vulnérabilité de l'en-tête Access-Control-Allow-Origin.booleantrue
Indique si le protocole WebSocket est activée.booleantrue

Ces paramètres définissent la configuration de SockJs.

Exemple
"services": {
    "CoAuthoring": {
        "sockjs": {
            "sockjs_url": "",
            "disable_cors": true,
            "websocket": true
        }
    }
}

Socket.IO

ParamètreDescriptionTypeDéfaut
Définit les propriétés de la connexion.objet
Définit le chemin qui est capturé côté serveur.chaîne"/doc/"
Définit si les fichiers client sont servis.booleanfalse
Définit le délai d'attente exprimé en millisecondes dans lequel le client doit répondre par le pong au ping que le serveur envoie. S'il n'y a aucune réponse, le serveur considère que la connexion est fermée. La connexion entre le server et le client est vérifiée toutes les pingInterval millisecondes. entier20000
Définit la durée de l'intervalle en millisecondes qui est utilisée pour vérifier si la connexion serveur-client est toujours active. La commande ping du serveur envoie un paquet au client, et si le client ne répond pas par un pong dans les pingTimeout millisecondes, le serveur considère que la connexion est fermée. entier25000
Définit le nombre maximal d'octets que peut contenir un message unique avant la fermeture de la socket.entier1e8

Tous ces paramètres définissent la configuration du module Socket.IO.

Exemple
"socketio": {
    "connection": {
        "path": "/doc/",
        "serveClient": false,
        "pingTimeout": 20000,
        "pingInterval": 25000,
        "maxHttpBufferSize": 1e8
    }
}

Paramètres de l'interruption du rappel

ParamètreDescriptionTypeDéfaut
Définit la limite de tentatives à reprendre une opération.entier0
Définit le délai d'attente de l'interruption du rappel.objet
Définit la fonction exponentielle à utiliser.entier2
Définit le délai exprimé en millisecondes avant la première tentative.entier1000
Définit le délai limite exprimé en millisecondes entre deux tentatives.entier2147483647
Indique si les délais d'attente sont randomisés en les multipliant par un facteur compris entre 1 et 2.booleanfalse
Définit l'état de HTTP de l'interruption du rappel.chaîne"429,500-599"

Tous ces paramètres définissent la configuration de l'interruption du rappel..

Exemple
"services": {
    "CoAuthoring": {
        "callbackBackoffOptions": {
            "retries": 0,
            "timeout":{
                "factor": 2,
                "minTimeout": 1000,
                "maxTimeout": 2147483647,
                "randomize": false
            },
            "httpStatus": "429,500-599"
        }
    }
}

Licence

ParamètreDescriptionTypeDéfaut
Indique le chemin d'accès du fichier de licence.chaîne""
Définit la limite de pourcentage des connexions et des vues d'ensemble de connexions au-delà de laquelle un message d'avertissement de la limite autorisée dépassée s'affiche dans des journaux d'activité. entier70

Définit le type du paquet de licence.

Ce paramètre est défini pendant la création de la version. Il ne faut pas le configurer manuellement.
entier0
Définit le délai d'expiration de la licence lors de l'envoi du message d'avertissement.chaîne"30d"

Ces paramètres définissent la configuration de la licence.

Exemple
"license" : {
    "license_file": "",
    "warning_limit_percents": 70,
    "packageType": 0,
    "warning_license_expiration": "30d"
}

Convertisseur

ParamètreDescriptionTypeDéfaut
Définit les propriétés du convertisseur.objet
Définit la taille limite du fichier demandé.entier104857600
Définit un délai d'attente de téléchargement du fichier converti.objet

Définit les périodes d'attentes suivantes:

  • délai d'attente de lecture - le temps d'attente des en-têtes de réponse du serveur (et initier le corps de réponse) avant d'annuler la demande;
  • délai d'attente de connexion - ferme la connexion de socket après un certain temps d'inactivité. Veuillez noter que le délai d'attente qui dépasse les paramètres d'expiration de TCP/IP du système d'exploitation n'aura aucun effet.

Ce paramètre est envoyé au module npm.

chaîne"2m"
Définit le délai d'attente du cycle de vie d'une demande.chaîne"2m"
Définit le nombre limité de tentatives de téléchargement du fichier converti.entier3
Définit le délai de tentative de téléchargement du fichier converti.entier1000
Définit la limite de processus de conversion pouvant être démarrés simultanément.entier1
Indique le chemin d'accès au dossier portant les polices.chaîne"null"
Définit le chemin vers le dossier portant des thèmes de présentation.chaîne"null"
Indique le chemin d'accès du convertisseur de fichiers x2t.chaîne"null"
Indique le chemin d'accès de l'application Document Builder.chaîne"null"
Définit les paramètres supplémentaires d'exécution de x2t.chaîne""
Définit les paramètres qui peuvent être passés directement à la bibliothèque node.js child_process.spawn (uniquement pour l'exécution x2t)..objet{}
Indique le chemin d'accès des fichiers d'erreurs.chaîne""
Indique la taille de la mémoire tampon StreamWriter.entier8388608
Définit la limite de réexpédition des messages.entier2
Définit des limites pour les champs de saisie.objet
Définit les types de fichiers OOXML pour lesquels sont établies les limites ( documents texte/classeurs/présentations). Cela n'inclut pas des autres objets ainsi que des images.chaîne"docx;dotx;docm;dotm"/"xlsx;xltx;xlsm;xltm"/"pptx;ppsx;potx;pptm;ppsm;potm"
Définit les propriétés de l'archive Zip.objet
Définit la taille totale des documents texte, des classeurs et des présentations non compressés.chaîne"50MB"/"300MB"/"50MB"
Définit le modèle du nom des fichiers dont les tailles sont calculées.chaîne"*.xml"

Tous ces paramètres définissent la configuration du convertisseur de fichiers.

Exemple
"FileConverter": {
    "converter": {
        "maxDownloadBytes": 104857600,
        "downloadTimeout": {
            "connectionAndInactivity": "2m",
            "wholeCycle": "2m"
        },
        "downloadAttemptMaxCount": 3,
        "downloadAttemptDelay": 1000,
        "maxprocesscount": 1,
        "fontDir": "null",
        "presentationThemesDir": "null",
        "x2tPath": "null",
        "docbuilderPath": "null",
        "args": "",
        "spawnOptions": {},
        "errorfiles": "",
        "streamWriterBufferSize": 8388608,
        "maxRedeliveredCount": 2,
        "inputLimits": [
            {
            "type": "docx;dotx;docm;dotm",
            "zip": {
                "uncompressed": "50MB",
                "template": "*.xml"
            }
            },
            {
            "type": "xlsx;xltx;xlsm;xltm",
            "zip": {
                "uncompressed": "300MB",
                "template": "*.xml"
            }
            },
            {
            "type": "pptx;ppsx;potx;pptm;ppsm;potm",
            "zip": {
                "uncompressed": "50MB",
                "template": "*.xml"
            }
            }
        ]
    }
}

Hébergez ONLYOFFICE Docs sur votre serveur ou utilisez dans le cloud

Articles avec le tag :
Parcourir tous les tags