Questo articolo è stato tradotto dall’AI

Configurazione di ONLYOFFICE Docs Community Edition

Introduzione

Per modificare qualsiasi impostazione del server di ONLYOFFICE Docs, configura il parametro corrispondente nel file di configurazione di ONLYOFFICE Docs, che si trova al seguente percorso:

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

Se desideri modificarlo, puoi utilizzare il file local.json, dove devono essere memorizzati tutti i parametri modificati. Questo file si trova nella stessa directory del file default.json, e l'intera struttura dell'oggetto per il parametro necessario deve essere mantenuta.

Si prega di non modificare direttamente il contenuto del file default.json. I valori predefiniti verranno ripristinati ogni volta che si riavvia il container Docker o si aggiorna ONLYOFFICE Docs a una nuova versione, e tutte le modifiche andranno perse.

I file di configurazione vengono letti nel seguente ordine di precedenza (priorità massima per ultimo):

  1. default.json — impostazioni predefinite di base (non modificare)
  2. production.json — sovrascritture di produzione
  3. local.json — le tue impostazioni personalizzate (modifica questo file)
  4. runtime.json — impostazioni modificate tramite il Pannello di Amministrazione (ha la massima precedenza)

Se un parametro è impostato in più file, viene utilizzato il valore dal file con la priorità più alta.

Le impostazioni predefinite del server sono descritte di seguito.

Scenari comuni di configurazione

Di seguito sono riportati i compiti di configurazione più comuni e i parametri coinvolti:

  • Collegamento di un database esterno: Imposta services.CoAuthoring.sql.type, services.CoAuthoring.sql.dbHost, services.CoAuthoring.sql.dbPort, services.CoAuthoring.sql.dbName, services.CoAuthoring.sql.dbUser, services.CoAuthoring.sql.dbPass. Per Docker, utilizza le variabili d'ambiente DB_TYPE, DB_HOST, DB_PORT, DB_NAME, DB_USER, DB_PWD invece.
  • Abilitazione del monitoraggio: Imposta statsd.useMetrics su true e configura statsd.host, statsd.port. Per Docker, utilizza METRICS_ENABLED, METRICS_HOST, METRICS_PORT.
  • Limitazione dell'accesso tramite IP: Consulta la guida alla configurazione del filtro IP.
  • Cambio del segreto JWT: Imposta services.CoAuthoring.secret.session.string e le chiavi correlate. Per Docker, utilizza JWT_SECRET. Consulta la guida alla configurazione JWT.
  • Utilizzo di un server Redis personalizzato: Imposta services.CoAuthoring.redis.host, services.CoAuthoring.redis.port. Per Docker, utilizza REDIS_SERVER_HOST, REDIS_SERVER_PORT.

Pannello di Amministrazione

ParametroDescrizioneTipoPredefinito
Definisce la porta su cui è in esecuzione il servizio del Pannello di Amministrazione.intero9000
Definisce un hash della password utilizzato per proteggere una password con l'algoritmo PBKDF2-SHA256.
Il valore di questo parametro è memorizzato nel file runtime.json. Ad esempio, per la versione Linux, questo file può essere trovato qui: /var/www/onlyoffice/Data/runtime.json
stringa""

Questi parametri definiscono le proprietà del Pannello di Amministrazione. Per maggiori dettagli sull'utilizzo del Pannello di Amministrazione, puoi consultare questo articolo.

Esempio
"adminPanel": {
    "port": 9000
  }

StatsD

ParametroDescrizioneTipoPredefinito
Definisce se le metriche StatsD sono abilitate per ONLYOFFICE Docs o meno.booleanofalse
Definisce l'host del server StatsD (nome host o indirizzo IP).stringa"localhost"
Definisce la porta del server StatsD.stringa"8125"
Definisce una stringa che verrà aggiunta all'inizio di tutte le statistiche automaticamente. Aiuta a distinguere diverse applicazioni che utilizzano lo stesso server StatsD.stringa"ds."

Questi parametri definiscono le proprietà del server StatsD, specificando un aggregatore di metriche.

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

Impostazioni del plugin AI

ParametroDescrizioneTipoPredefinito
Definisce le azioni eseguite dall'AI, ad esempio Chat, Sintesi, Traduzione, Analisi del Testo, Generazione di Immagini, OCR, Visione.oggetto
Definisce i modelli AI, ad esempio gemini-1.5-pro-latest, llama3.2:latest, ecc.array[]
Definisce i fornitori AI, ad esempio OpenAI, Google Gemini, Anthropic, ecc.oggetto
Definisce la versione del SDK AI.intero3
Definisce un timeout del proxy AI (misurato in minuti).stringa"5m"
Definisce quali siti web esterni sono autorizzati a effettuare richieste cross-origin al server.array di stringhe["https://onlyoffice.github.io", "https://onlyoffice-plugins.github.io"]
Supporta il routing delle richieste AI tramite proxy.stringa""

Questi parametri definiscono le proprietà del plugin AI.

Esempio
"aiSettings": {
    "actions": {},
    "models": [],
    "providers": {},
    "version": 3,
    "timeout": "5m",
    "allowedCorsOrigins": ["https://onlyoffice.github.io", "https://onlyoffice-plugins.github.io"],
    "proxy": ""
  }

Logger

ParametroDescrizioneTipoPredefinito
Definisce un percorso per il file di log.stringa""
Definisce le opzioni di log.oggetto
Definisce se le informazioni di log vengono stampate sulla console o meno.booleanotrue

Questi parametri definiscono le proprietà del logger.

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

Configurazione runtime

ParametroDescrizioneTipoPredefinito
Definisce un percorso per il file di configurazione dinamica runtime.json. Per impostazione predefinita, viene utilizzato il percorso /var/www/onlyoffice/Data/runtime.json.stringa""
Definisce le opzioni di cache per runtime.json.oggetto
Definisce il TTL (time to live) per ogni elemento di cache generato (misurato in secondi).intero300
Definisce il periodo utilizzato per l'intervallo di controllo automatico dell'eliminazione (misurato in secondi).intero60
Definisce se le variabili memorizzate nella cache verranno clonate o meno. Se true, verrà creata una copia della variabile memorizzata nella cache. Se false, verrà salvato solo il riferimento.booleanofalse

Questi parametri definiscono le proprietà del file di configurazione dinamica runtime.json. Questo file consente di modificare i parametri senza riavviare. Il file viene riletto in base a un evento di watch o ogni 5 minuti.

Esempio
"runtimeConfig": {
    "filePath": "",
    "cache": {
      "stdTTL": 300,
      "checkperiod": 60,
      "useClones": false
    }
  }

Code

ParametroDescrizioneTipoPredefinito
Definisce il tipo di message broker.stringa"rabbitmq"
Definisce il timeout di conversione (misurato in secondi).intero300
Definisce il TTL (time to live) di tutti i messaggi in una coda (misurato in secondi).intero900

Questi parametri definiscono una coda di messaggi ricevuti dal message-broker.

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

Email

ParametroDescrizioneTipoPredefinito
Definisce le impostazioni di base per la connessione al server SMTP.oggetto
Definisce il nome host o l'indirizzo IP del server SMTP.stringa"localhost"
Definisce la porta del server SMTP.intero587
Definisce i dati di autenticazione.oggetto

Definisce il nome utente per l'autenticazione.

Si noti che a partire dalla versione 8.3, i valori di questo parametro nei file default.json e local.json sono diversi.
stringa""

Definisce la password per l'autenticazione.

Si noti che a partire dalla versione 8.3, i valori di questo parametro nei file default.json e local.json sono diversi.
stringa""
Definisce le opzioni tecniche per la connessione al server SMTP.oggetto
Definisce se consentire l'uso di file come contenuto. Se questo parametro è impostato su true, i dati JSON da una fonte non attendibile non possono essere utilizzati come email. Se un allegato o un nodo di messaggio tenta di recuperare qualcosa da un file, l'invio restituisce un errore. booleanofalse
Definisce se consentire l'uso di URL come contenuto.booleanofalse
Definisce le impostazioni del messaggio email.oggetto
Definisce l'indirizzo email del mittente. Tutti gli indirizzi email possono essere semplici "sender@server.com" o con nome formattato '"Nome Mittente" sender@server.com'. stringa"from@example.com"
Definisce l'elenco separato da virgole o un array di indirizzi email dei destinatari che appariranno nel campo To:.stringa"to@example.com"

Questi parametri definiscono le impostazioni di un server di posta esterno, utilizzato per inviare notifiche Per connettersi al server di posta, utilizzare la libreria nodemailer. Molte impostazioni di configurazione vengono passate direttamente a questa libreria.

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

Notifica

ParametroDescrizioneTipoPredefinito
Definisce le regole delle impostazioni di notifica per quattro tipi di notifica: licenseExpirationWarning, licenseExpirationError, licenseLimitEdit, licenseLimitLiveViewer. oggetto
Definisce le regole per le impostazioni di notifica licenseExpirationWarning.oggetto
Definisce se la notifica licenseExpirationWarning è abilitata. Ogni tipo di notifica deve essere abilitato separatamente.booleanofalse
Definisce il modo di invio della notifica licenseExpirationWarning. Attualmente, è disponibile solo il tipo email.array di stringhe["email"]
Definisce un modello per il titolo e il corpo della notifica licenseExpirationWarning.oggetto
Definisce un modello per il titolo della notifica licenseExpirationWarning.stringa"%s Avviso di scadenza della licenza Docs"
Definisce un modello per il corpo della notifica licenseExpirationWarning.stringa"Attenzione! La tua licenza sta per scadere il %s.\nRaggiunta questa data, non avrai più diritto a ricevere supporto tecnico personale e installare nuove versioni di Docs rilasciate dopo questa data."
Definisce la politica di invio della notifica licenseExpirationWarning.oggetto
Definisce il tempo in cui la notifica licenseExpirationWarning verrà inviata (non più spesso del periodo specificato).stringa"1d"
Definisce le regole per le impostazioni di notifica licenseExpirationError.oggetto
Definisce se la notifica licenseExpirationError è abilitata. Ogni tipo di notifica deve essere abilitato separatamente.booleanofalse
Definisce il modo di invio della notifica licenseExpirationError. Attualmente, è disponibile solo il tipo email.array di stringhe["email"]
Definisce un modello per il titolo e il corpo della notifica licenseExpirationError.oggetto
Definisce un modello per il titolo della notifica licenseExpirationError.stringa"%s Avviso di scadenza della licenza Docs"
Definisce un modello per il corpo della notifica licenseExpirationError.stringa"Attenzione! La tua licenza è scaduta il %s.\nNon hai più diritto a ricevere supporto tecnico personale e installare nuove versioni di Docs rilasciate dopo questa data.\nSi prega di contattare sales@onlyoffice.com per discutere il rinnovo della licenza."
Definisce la politica di invio della notifica licenseExpirationError.oggetto
Definisce il tempo in cui la notifica licenseExpirationError verrà inviata (non più spesso del periodo specificato).stringa"1d"
Definisce le regole per le impostazioni di notifica licenseLimitEdit.oggetto
Definisce se la notifica licenseLimitEdit è abilitata. Ogni tipo di notifica deve essere abilitato separatamente.booleanofalse
Definisce il modo di invio della notifica licenseLimitEdit. Attualmente, è disponibile solo il tipo email.array di stringhe["email"]
Definisce un modello per il titolo e il corpo della notifica licenseLimitEdit.oggetto
Definisce un modello per il titolo della notifica licenseLimitEdit.stringa"%s Avviso di limite di connessione della licenza Docs"
Definisce un modello per il corpo della notifica licenseLimitEdit.stringa"Attenzione! Hai raggiunto il %s%% del limite %s impostato dalla tua licenza."
Definisce la politica di invio delle notifiche licenseLimitEdit.oggetto
Definisce l'orario in cui la notifica licenseLimitEdit verrà inviata (non più frequentemente del periodo specificato).stringa"1d"
Definisce le regole per le impostazioni della notifica licenseLimitLiveViewer.oggetto
Definisce se la notifica licenseLimitLiveViewer è abilitata. Ogni tipo di notifica deve essere abilitato separatamente.booleanofalse
Definisce il modo di invio della notifica licenseLimitLiveViewer. Attualmente, è disponibile solo il tipo email.array di stringhe["email"]
Definisce un modello per il titolo e il corpo della notifica licenseLimitLiveViewer.oggetto
Definisce un modello per il titolo della notifica licenseLimitLiveViewer.stringa"%s Avviso limite connessioni licenza Docs"
Definisce un modello per il corpo della notifica licenseLimitLiveViewer.stringa"Attenzione! Hai raggiunto il %s%% del limite %s impostato dalla tua licenza."
Definisce la politica di invio delle notifiche licenseLimitLiveViewer.oggetto
Definisce l'orario in cui la notifica licenseLimitLiveViewer verrà inviata (non più frequentemente del periodo specificato).stringa"1d"

Questi parametri definiscono le impostazioni delle notifiche.

Vengono inviate notifiche con i seguenti tipi di eventi e contenuti:

  • Superamento del 70% della quota di connessione (quota di utenti unici).

    Avviso limite connessioni licenza: "Attenzione! Hai raggiunto il 70% del limite di connessioni impostato dalla tua licenza."

  • Raggiungimento della quota di connessione (quota di utenti unici).

    Avviso limite connessioni licenza: "Attenzione! Hai raggiunto il 100% del limite di connessioni impostato dalla tua licenza."

  • 30 giorni prima della scadenza della licenza.

    Avviso di scadenza licenza: "Attenzione! La tua licenza sta per scadere l'8 settembre 2024. Al raggiungimento di questa data, non avrai più diritto a ricevere supporto tecnico personale e installare nuove versioni di Docs rilasciate dopo questa data."

  • La licenza è scaduta.

    Avviso limite connessioni licenza: "Attenzione! La tua licenza è scaduta l'8 settembre 2024. Non hai più diritto a ricevere supporto tecnico personale e installare nuove versioni di Docs rilasciate dopo questa data. Si prega di contattare sales@onlyoffice.com per discutere il rinnovo della licenza."

Queste notifiche vengono scritte nel registro del server con livello WARN o ERROR.

Esempio
"notification": {
"rules": {
"licenseExpirationWarning": {
"enable": false,
"transportType": [
"email"
],
"template": {
"title": "%s Avviso di scadenza licenza Docs",
"body": "Attenzione! La tua licenza sta per scadere il %s.\nAl raggiungimento di questa data, non avrai più diritto a ricevere supporto tecnico personale e installare nuove versioni di Docs rilasciate dopo questa data."
},
"policies": {
"repeatInterval": "1d"
}
},
"licenseExpirationError": {
"enable": false,
"transportType": [
"email"
],
"template": {
"title": "%s Avviso di scadenza licenza Docs",
"body": "Attenzione! La tua licenza è scaduta il %s.\nNon hai più diritto a ricevere supporto tecnico personale e installare nuove versioni di Docs rilasciate dopo questa data.\nSi prega di contattare sales@onlyoffice.com per discutere il rinnovo della licenza."
},
"policies": {
"repeatInterval": "1d"
}
},
"licenseLimitEdit": {
"enable": false,
"transportType": [
"email"
],
"template": {
"title": "%s Avviso limite connessioni licenza Docs",
"body": "Attenzione! Hai raggiunto il %s%% del limite %s impostato dalla tua licenza."
},
"policies": {
"repeatInterval": "1h"
}
},
"licenseLimitLiveViewer": {
"enable": false,
"transportType": [
"email"
],
"template": {
"title": "%s Avviso limite connessioni licenza Docs",
"body": "Attenzione! Hai raggiunto il %s%% del limite di visualizzatori live %s impostato dalla tua licenza."
},
"policies": {
"repeatInterval": "1h"
}
}
}
}

Servizio di archiviazione documenti

ParametroDescrizioneTipoPredefinito
Definisce il nome del servizio di archiviazione documenti. Ad esempio, il valore "storage-s3" consente di collegare un bucket Amazon S3 come cache. Il valore "storage-az" consente di collegare MS Azure Blob Storage come cache.stringa"storage-fs"
Definisce i parametri dell'oggetto fileSystem.oggetto
Definisce un percorso alla cartella App_Data dove sono archiviati tutti i file.stringa""
Definisce il tempo di scadenza dell'URL temporaneo per l'oggetto fileSystem (misurato in secondi).intero900
Definisce la stringa segreta utilizzata per firmare l'URL.stringa"verysecretstring"
Definisce una regione AWS in cui si trova il tuo bucket Amazon.stringa""
Definisce l'endpoint dello storage documenti S3 AWS o MS Azure Blob Storage.stringa"http://localhost/s3"
Definisce un nome univoco per lo storage documenti S3 AWS o MS Azure Blob Storage.stringa"cache"
Definisce il nome della cartella di archiviazione documenti S3 AWS dove sono archiviati tutti i file.stringa"files"
Definisce il nome della cartella cache per il lavoro in modalità multi-tenant.string"data"
Definisce i parametri che consentono di personalizzare i comandi per uno storage, ad esempio, abilitando AWS KMS.object
Definisce i parametri che consentono di personalizzare i comandi per lo storage documentale S3 AWS.object
Definisce i parametri del tipo di comando putObject utilizzato per caricare un oggetto in un bucket S3 specificato.object
Definisce il tipo di crittografia per l'oggetto appena caricato. I valori disponibili sono "aws:kms" o "AES256".string
Questa è un'impostazione opzionale. Ottimizza il costo per richiesta riducendo le chiamate all'API KMS.boolean
Definisce l'identificatore (ARN o chiave) della chiave gestita dal cliente in AWS KMS utilizzata per crittografare l'oggetto dopo il caricamento.string
Definisce i parametri del tipo di comando getObject utilizzato per recuperare un oggetto da un bucket S3 specificato.object
Definisce i parametri del tipo di comando copyObject utilizzato per creare una copia di un oggetto memorizzato in un bucket S3 specificato.object
Definisce il tipo di crittografia per l'oggetto appena copiato. I valori disponibili sono "aws:kms" o "AES256".string
Questa è un'impostazione opzionale. Ottimizza il costo per richiesta riducendo le chiamate all'API KMS.boolean
Definisce l'identificatore (ARN o chiave) della chiave gestita dal cliente in AWS KMS utilizzata per crittografare l'oggetto dopo la copia.string
Definisce come Amazon S3 dovrebbe gestire i metadati dell'oggetto di destinazione durante un'operazione di copia. Se il valore è impostato su "COPY", i metadati dall'oggetto sorgente vengono copiati sull'oggetto di destinazione. Se il valore è impostato su "REPLACE", i metadati dell'oggetto di destinazione vengono sostituiti dai metadati forniti nella richiesta copyObject e i metadati dall'oggetto sorgente non vengono copiati.string"COPY"
Definisce i parametri del tipo di comando listObjects utilizzato per recuperare un elenco di oggetti all'interno di un bucket S3 specificato.object
Definisce il numero massimo di oggetti che vengono restituiti in una risposta.integer1000
Definisce i parametri del tipo di comando deleteObject utilizzato per rimuovere un oggetto da un bucket S3 specificato.object
Definisce i parametri che consentono di personalizzare i comandi per lo storage MS Azure Blob.object
Definisce i parametri del tipo di comando uploadData utilizzato per caricare dati nello storage MS Azure Blob.object
Definisce il nome dell'ambito di crittografia utilizzato per crittografare un blob caricato.string
Definisce i parametri del tipo di comando uploadStream utilizzato per caricare dati da un flusso nello storage MS Azure Blob.object
Definisce il nome dell'ambito di crittografia utilizzato per crittografare un blob caricato da un flusso.string
Definisce i parametri del tipo di comando download utilizzato per scaricare dati dallo storage MS Azure Blob.object
Definisce i parametri del tipo di comando syncCopyFromURL utilizzato per copiare un blob da un URL sorgente a un blob di destinazione.object
Definisce il nome dell'ambito di crittografia utilizzato per crittografare un blob copiato.string
Definisce i parametri del tipo di comando listBlobsFlat utilizzato per recuperare un elenco di tutti i blob in un contenitore.object
Definisce il numero massimo di blob da restituire.integer1000
Definisce i parametri del tipo di comando deleteBlob utilizzato per rimuovere un blob.object
Definisce il tempo di scadenza dell'URL per lo storage documentale S3 AWS (misurato in millisecondi).integer604800
Definisce un ID chiave per accedere allo storage documentale S3 AWS o MS Azure Blob.string""
Definisce una chiave segreta per accedere allo storage documenti S3 AWS o MS Azure Blob Storage.string""
Definisce se il SSL dello storage documenti S3 AWS è abilitato o meno.booleanfalse
Definisce se le richieste allo storage documenti S3 AWS utilizzano sempre l'indirizzamento in stile percorso.booleantrue
Definisce un host esterno che viene utilizzato al posto dell'host specificato nella richiesta.string""
Definisce l'emissione di link a uno storage esterno: link diretti o link che sono proxy tramite il Document Server. Impostare questo parametro su true abilita i link diretti, mentre il valore false consente l'uso di link interni (il server fa da proxy alle richieste verso lo storage).booleanfalse

Questi parametri definiscono la configurazione del servizio di storage documenti.

Esempio
"storage": {
    "name": "storage-fs",
    "fs": {
      "folderPath": "",
      "urlExpires": 900,
      "secretString": "verysecretstring"
    },
    "region": "",
    "endpoint": "http://localhost/s3",
    "bucketName": "cache",
    "storageFolderName": "files",
    "cacheFolderName": "data",
    "commandOptions": {
      "s3": {
        "putObject": {},
        "getObject": {},
        "copyObject": {
          "MetadataDirective": "COPY"
        },
        "listObjects": {
          "MaxKeys": 1000
        },
        "deleteObject": {}
      },
      "az": {
        "uploadData": {},
        "uploadStream": {},
        "download": {},
        "syncCopyFromURL": {},
        "listBlobsFlat": {
          "maxPageSize": 1000
        },
        "deleteBlob": {}
      }
    },
    "urlExpires": 604800,
    "accessKeyId": "",
    "secretAccessKey": "",
    "sslEnabled": false,
    "s3ForcePathStyle": true,
    "externalHost": "",
    "useDirectStorageUrls": false
  }

Storage persistente

Questi parametri definiscono le impostazioni dello storage persistente, che viene utilizzato per separare le impostazioni per lo storage dei file di cache dei documenti e lo storage dei file dimenticati e di errore. Le impostazioni non specificate in questo oggetto sono ereditate dall'oggetto storage. La separazione è conveniente per gli aggiornamenti del server.

Esempio
"persistentStorage": {
}

RabbitMQ

ParametroDescrizioneTipoPredefinito

Definisce l'URL di RabbitMQ.

Si prega di notare che a partire dalla versione 8.3, i valori di questo parametro nei file default.json e local.json sono diversi.
string"amqp://localhost:5672"

Definisce le opzioni socket di RabbitMQ che verranno passate alla libreria socket (net o tls). Queste opzioni devono essere campi impostati sull'oggetto fornito. Le opzioni socket possono essere utilizzate per la connessione SSL e possono contenere i seguenti campi:

  • cert - definisce un certificato da presentare al server (in formato PEM o pkcs12),
    tipo: string,
    esempio: "";
  • key - definisce la chiave privata per il certificato (in formato PEM o pkcs12),
    tipo: string,
    esempio: "";
  • passphrase - definisce una passphrase per la chiave privata,
    tipo: string,
    esempio: "MySecretPassword";
  • ca - definisce un elenco dei certificati CA in formato PEM di cui ci fidiamo, poiché stiamo utilizzando un certificato autofirmato,
    tipo: array,
    esempio: [];
  • noDelay - definisce se TCP_NODELAY (algoritmo di Nagle) è impostato sul socket sottostante o meno,
    tipo: boolean,
    esempio: true.
oggetto{}
Definisce il server di scambio Publisher Subscriber.oggetto
Definisce un nome per il server Publisher Subscriber.string"ds.pubsub"
Definisce le impostazioni del server Publisher Subscriber.oggetto
Definisce se la coda sopravviverà ai riavvii del broker.booleantrue
Definisce la coda Publisher Subscriber.oggetto
Definisce un nome per la coda Publisher Subscriber.string""
Definisce le impostazioni della coda Publisher Subscriber.oggetto
Definisce se la coda verrà eliminata quando il numero di consumatori scende a zero.booleantrue
Definisce se la coda sarà limitata alla connessione.booleantrue
Definisce gli argomenti aggiuntivi, di solito parametri per qualche tipo di estensione specifica del broker, ad esempio alta disponibilità, TTL.oggetto
Definisce un valore dell'intestazione x-queue-type che specifica il tipo di coda. Possono essere utilizzate solo code classiche.string"classic"
Definisce una coda di compiti.oggetto
Definisce un nome per la coda dei task.stringa"ds.converttask6"
Definisce le impostazioni della coda dei task.oggetto
Definisce se la coda sopravviverà ai riavvii del broker.booleanotrue
Definisce una priorità della coda.intero6
Definisce gli argomenti aggiuntivi, solitamente parametri per qualche tipo di estensione specifica del broker, ad esempio alta disponibilità, TTL.oggetto
Definisce un valore per l'intestazione x-queue-type che specifica il tipo di coda. Questa impostazione può essere utilizzata per impostare le code quorum.stringa"classic"
Definisce una coda di risposte.oggetto
Definisce un nome per la coda di risposte.stringa"ds.convertresponse"
Definisce le impostazioni della coda di risposte.oggetto
Definisce se la coda sopravviverà ai riavvii del broker.booleanotrue
Definisce gli argomenti aggiuntivi, solitamente parametri per qualche tipo di estensione specifica del broker, ad esempio alta disponibilità, TTL.oggetto
Definisce un valore per l'intestazione x-queue-type che specifica il tipo di coda. Questa impostazione può essere utilizzata per impostare le code quorum.stringa"classic"
Definisce un exchange di dead letter.oggetto
Definisce un nome per l'exchange di dead letter.stringa"ds.exchangeconvertdead"
Definisce le impostazioni dell'exchange di dead letter.oggetto
Definisce se la coda sopravviverà ai riavvii del broker.booleanotrue
Definisce una coda di dead letter.oggetto
Definisce un nome per la coda di dead letter.stringa"ds.convertdead"
Definisce le impostazioni della coda di dead letter.oggetto
Definisce se la coda sopravviverà ai riavvii del broker.booleanotrue
Definisce gli argomenti aggiuntivi, solitamente parametri per qualche tipo di estensione specifica del broker, ad esempio alta disponibilità, TTL.oggetto
Definisce un valore per l'intestazione x-queue-type che specifica il tipo di coda. Questa impostazione può essere utilizzata per impostare le code quorum.stringa"classic"
Definisce la coda ritardata.oggetto
Definisce un nome per la coda ritardata.stringa"ds.delayed"
Definisce le impostazioni della coda ritardata.oggetto
Definisce se la coda sopravviverà ai riavvii del broker.booleanotrue
Definisce gli argomenti aggiuntivi, solitamente parametri per qualche tipo di estensione specifica del broker, ad esempio alta disponibilità, TTL.oggetto
Definisce un valore per l'intestazione x-queue-type che specifica il tipo di coda. Questa impostazione può essere utilizzata per impostare le code quorum.stringa"classic"

Questi parametri definiscono la configurazione del message broker RabbitMQ.

Esempio
"rabbitmq": {
    "url": "amqp://localhost:5672",
    "socketOptions": {},
    "exchangepubsub": {
        "name": "ds.pubsub",
        "options": {
            "durable": true
        }
    },
    "queuepubsub": {
        "name": "",
        "options": {
            "autoDelete": true,
            "exclusive": true,
            "arguments": {
                "x-queue-type": "classic"
            }
        }
    },
    "queueconverttask": {
        "name": "ds.converttask6",
        "options": {
            "durable": true,
            "maxPriority": 6,
            "arguments": {
                "x-queue-type": "classic"
            }
        }
    },
    "queueconvertresponse": {
        "name": "ds.convertresponse",
        "options": {
            "durable": true,
            "arguments": {
                "x-queue-type": "classic"
            }
        }
    },
    "exchangeconvertdead": {
        "name": "ds.exchangeconvertdead",
        "options": {
            "durable": true
        }
    },
    "queueconvertdead": {
        "name": "ds.convertdead",
        "options": {
            "durable": true,
            "arguments": {
                "x-queue-type": "classic"
            }
        }
    },
    "queuedelayed": {
        "name": "ds.delayed",
        "options": {
            "durable": true,
            "arguments": {
                "x-queue-type": "classic"
            }
        }
    }
}

ActiveMQ

ParametroDescrizioneTipoPredefinito
Definisce le opzioni di connessione ActiveMQ.oggetto
Definisce una porta del server a cui è connesso il contenitore ActiveMQ.intero5672
Definisce un host (nome host o indirizzo IP) del server a cui è connesso il contenitore ActiveMQ.stringa"localhost"
Definisce se il modulo ActiveMQ tenterà automaticamente di riconnettersi in caso di disconnessione (true) o meno (false).booleanofalse
Definisce una coda di attività.stringa"ds.converttask"
Definisce una coda di risposte.stringa"ds.convertresponse"
Definisce una coda di messaggi non consegnabili.stringa"ActiveMQ.DLQ"
Definisce la coda ritardata.stringa"ds.delayed"
Definisce il topic Publisher Subscriber.stringa"ds.pubsub"

Questi parametri definiscono la configurazione del broker di messaggi ActiveMQ.

Esempio
"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

ParametroDescrizioneTipoPredefinito
Definisce se la cache DNS è abilitata o meno.booleanotrue
Definisce il tempo di scadenza dei record DNS (misurato in secondi).intero300
Definisce la dimensione della cache DNS.intero1000

Questi parametri definiscono la configurazione della cache DNS utilizzata per il filtro IP.

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

Protocollo OpenPGP

ParametroDescrizioneTipoPredefinito
Definisce la configurazione del protocollo OpenPGP.oggetto{}
Definisce le impostazioni di crittografia OpenPGP.oggetto
Definisce una password utilizzata per la crittografia OpenPGP.array di stringhe["verysecretstring"]
Definisce le impostazioni di decrittografia OpenPGP.oggetto
Definisce una password utilizzata per la decrittografia OpenPGP.array di stringhe["verysecretstring"]

Questi parametri definiscono le impostazioni del protocollo OpenPGP, utilizzato per crittografare la password quando si apre un documento crittografato per la modifica.

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

Algoritmo AES-256-GCM

ParametroDescrizioneTipoPredefinito
Definisce la configurazione dell'algoritmo AES-256-GCM.oggetto
Definisce la lunghezza della chiave misurata in byte.intero32
Definisce la lunghezza del sale misurata in byte.intero64
Definisce la lunghezza del vettore di inizializzazione misurata in byte.integer16
Definisce la lunghezza delle iterazioni misurata in byte.integer5
Definisce una password utilizzata per la crittografia AES-256-GCM.string"verysecretstring"

Questi parametri definiscono le impostazioni dell'algoritmo di crittografia AES-256-GCM utilizzato per la protezione con password dei documenti.

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

Bottleneck

ParametroDescrizioneTipoPredefinito
Definisce le opzioni del costruttore per generare limitatori per il throttling delle richieste al database.object{}

Questo parametro definisce la configurazione di Bottleneck.

Esempio
"bottleneck": {
    "getChanges": {
    }
}

Certificati di Root del Sistema Windows

ParametroDescrizioneTipoPredefinito
Definisce la modalità di iniezione dei certificati di Root del Sistema Windows. Il "+" indica che viene utilizzato un nuovo metodo sperimentale per installare i certificati.string"+"

Questo parametro definisce le impostazioni dei certificati di Root del Sistema Windows.

Esempio
"win-ca": {
    "inject": "+"
}

WOPI

ParametroDescrizioneTipoPredefinito
Definisce se WOPI è abilitato o meno.booleanfalse
Definisce l'host WOPI (nome host o indirizzo IP).string""
Definisce un percorso al template HTML di WOPI.string"../../web-apps/apps/api/wopi"
Definisce una zona che il Document Server utilizza per navigare il browser all'applicazione WOPI.string"external-http"
Definisce un percorso per la favicon dell'editor di documenti.string"/web-apps/apps/documenteditor/main/resources/img/favicon.ico"
Definisce un percorso per la favicon dell'editor di fogli di calcolo.string"/web-apps/apps/spreadsheeteditor/main/resources/img/favicon.ico"
Definisce un percorso per la favicon dell'editor di presentazioni.string"/web-apps/apps/presentationeditor/main/resources/img/favicon.ico"
Definisce un percorso per la favicon dell'editor PDF.string"/web-apps/apps/pdfeditor/main/resources/img/favicon.ico"
Definisce un percorso per la favicon dell'editor di diagrammi.string"/web-apps/apps/visioeditor/main/resources/img/favicon.ico"
Definisce un elenco di parametri di informazioni sui file WOPI che sono bloccati quando si invia questo array al browser. Tuttavia, questi parametri sono disponibili sul server.array of strings["FileUrl"]
Definisce i tipi di file che possono essere visualizzati nell'editor PDF.array of strings["djvu", "xps", "oxps"]
Definisce i tipi di file che possono essere modificati nell'editor PDF.array of strings["pdf"]
Definisce i tipi di file dei moduli.array of strings["pdf"]
Definisce i tipi di file che possono essere visualizzati nell'editor di documenti.array of strings["doc", "dotm", "dot", "fodt", "ott", "rtf", "mht", "mhtml", "html", "htm", "xml", "epub", "fb2", "sxw", "stw", "wps", "wpt", "pages", "docxf", "oform", "hwp", "hwpx", "md", "hml"]
Definisce i tipi di file che possono essere modificati nell'editor di documenti.array of strings["docx", "dotx", "docm", "odt", "txt"]
Definisce i tipi di file che possono essere visualizzati nell'editor di fogli di calcolo.array of strings["xls", "xltm", "xlt", "fods", "ots", "sxc", "xml", "et", "ett", "numbers"]
Definisce i tipi di file che possono essere modificati nell'editor di fogli di calcolo.array of strings["xlsx", "xlsb", "xltx", "xlsm", "ods", "csv"]
Definisce i tipi di file che possono essere visualizzati nell'editor di presentazioni.array of strings["ppt", "ppsx", "ppsm", "pps", "potm", "pot", "fodp", "otp", "sxi", "dps", "dpt", "key", "odg"]
Definisce i tipi di file che possono essere modificati nell'editor di presentazioni.array of strings["pptx", "potx", "pptm", "odp"]
Definisce i tipi di file che possono essere visualizzati nell'editor di diagrammi.array di stringhe["vsdx", "vstx", "vssx", "vsdm", "vstm", "vssm"]
Definisce i tipi di file che possono essere modificati nell'editor di diagrammi.array di stringhe[]

Definisce la chiave pubblica che l'integratore utilizza per verificare la chiave privata.

Si prega di notare che a partire dalla versione 8.3, i valori di questo parametro nei file default.json e local.json sono diversi.
stringa""

Definisce il modulo RSA nel formato codificato Base64 utilizzato per recuperare la chiave pubblica.

Si prega di notare che a partire dalla versione 8.3, i valori di questo parametro nei file default.json e local.json sono diversi.
stringa""
Definisce l'esponente RSA nel formato codificato Base64 utilizzato per recuperare la chiave pubblica.stringa65537

Definisce la chiave privata che firma la richiesta del Document Server.

Si prega di notare che a partire dalla versione 8.3, i valori di questo parametro nei file default.json e local.json sono diversi.
stringa""

Definisce la vecchia chiave pubblica che l'integratore utilizzava per verificare la chiave privata.

Si prega di notare che a partire dalla versione 8.3, i valori di questo parametro nei file default.json e local.json sono diversi.
stringa""

Definisce il vecchio modulo RSA nel formato codificato Base64 utilizzato per recuperare la chiave pubblica.

Si prega di notare che a partire dalla versione 8.3, i valori di questo parametro nei file default.json e local.json sono diversi.
stringa""
Definisce il vecchio esponente RSA nel formato codificato Base64 utilizzato per recuperare la chiave pubblica.stringa65537

Definisce la vecchia chiave privata che firmava la richiesta del Document Server.

Si prega di notare che a partire dalla versione 8.3, i valori di questo parametro nei file default.json e local.json sono diversi.
stringa""
Definisce l'intervallo di tempo in minuti per aggiornare il blocco su un file reimpostando il suo timer di scadenza automatica a 30 minuti.stringa"10m"
Definisce le proprietà dei gestori fittizi per il test di stress.oggetto
Definisce se i gestori fittizi sono abilitati o meno.booleanofalse
Definisce il percorso fittizio al file di esempio.stringa""

Questi parametri definiscono la configurazione del protocollo WOPI.

Esempio
"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",
"favIconUrlDiagram": "/web-apps/apps/visioeditor/main/resources/img/favicon.ico",
"fileInfoBlockList": ["FileUrl"],
"pdfView": ["djvu", "xps", "oxps"],
"pdfEdit": ["pdf"],
"forms": ["pdf"],
"wordView": ["doc", "dotm", "dot", "fodt", "ott", "rtf", "mht", "mhtml", "html", "htm", "xml", "epub", "fb2", "sxw", "stw", "wps", "wpt", "pages", "docxf", "oform", "hwp", "hwpx", "md", "hml"],
"wordEdit": ["docx", "dotx", "docm", "odt", "txt"],
"cellView": ["xls", "xltm", "xlt", "fods", "ots", "sxc", "xml", "et", "ett", "numbers"],
"cellEdit": ["xlsx", "xlsb", "xltx", "xlsm", "ods", "csv"],
"slideView": ["ppt", "ppsx", "ppsm", "pps", "potm", "pot", "fodp", "otp", "sxi", "dps", "dpt", "key", "odg"],
"slideEdit": ["pptx", "potx", "pptm", "odp"],
"diagramView": ["vsdx", "vstx", "vssx", "vsdm", "vstm", "vssm"],
"diagramEdit": [],
"publicKey": "",
"modulus": "",
"exponent": 65537,
"privateKey": "",
"publicKeyOld": "",
"modulusOld": "",
"exponentOld": 65537,
"privateKeyOld": "",
"refreshLockInterval": "10m",
"dummy": {
  "enable": false,
  "sampleFilePath": ""
}
}

Tenant

ParametroDescrizioneTipoPredefinito
Definisce una directory che limita i file che possono essere accessibili da ONLYOFFICE Docs.stringa""
Definisce il nome di dominio base del tenant.stringa""
Definisce il nome del file di configurazione nella cartella del tenant per sovrascrivere default.json. Viene utilizzato nella modalità multi-tenant per inizializzare le impostazioni specifiche del tenant (wopi, ipfilter, jwt secret ecc.). stringa"config.json"
Definisce il nome del file .pem dove è memorizzata la chiave segreta del tenant.stringa"secret.key"
Definisce il nome del file dove è memorizzata la licenza del tenant.stringa"license.lic"
Definisce il nome di dominio del tenant predefinito.stringa"localhost"
Definisce le proprietà della cache per la lettura della licenza multi-tenant e del segreto.oggetto
Definisce il TTL (tempo di vita) per ogni elemento di cache generato (misurato in secondi).intero300
Definisce il periodo utilizzato per l'intervallo di controllo automatico dell'eliminazione (misurato in secondi).intero60
Definisce se le variabili memorizzate nella cache verranno clonate o meno. Se true, verrà creata una copia della variabile memorizzata nella cache. Se false, verrà salvato solo il riferimento.booleanofalse

Questi parametri definiscono le proprietà dei tenant per lavorare in modalità multi-tenant.

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

Richiesta esterna

ParametroDescrizioneTipoPredefinito
Definisce gli indirizzi IP consentiti per le richieste dirette.oggetto
Definisce un elenco di indirizzi IP considerati attendibili per le richieste dirette.lista[]
Definisce se gli indirizzi IP attendibili sono nel JWT o meno.booleanotrue
Definisce le opzioni di richiesta esterna.oggetto
Definisce se le richieste esterne sono consentite o meno.booleanotrue
Definisce se l'indirizzo IP privato verrà bloccato o meno.booleanotrue
Definisce l'URL del proxy.stringa""
Definisce i parametri di autenticazione del proxy.oggetto
Definisce il nome utente per l'autenticazione del proxy.stringa""
Definisce la password per l'autenticazione del proxy.stringa""
Definisce le intestazioni del proxy.oggetto{}

Questi parametri definiscono la configurazione delle richieste esterne.

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

Servizi Document Server

Questi parametri definiscono le impostazioni per i servizi del Document Server.

ParametroDescrizioneTipoPredefinito
Definisce le impostazioni per la sessione di modifica in co-autore.oggetto

Server

ParametroDescrizioneTipoPredefinito
Definisce la porta del server.intero8000
Definisce un numero di thread di lavoro per CPU.intero1
Definisce la modalità del server.stringa"development"
Definisce una dimensione massima per tutti i file temporanei caricati utilizzati da ciascun processo (misurata in byte).intero104857600
Definisce una dimensione massima per tutte le immagini caricate in ciascun processo (misurata in byte).intero26214400
Definisce le proprietà di timeout per il download delle immagini.oggetto

Definisce un periodo che specifica due timeout:

  • timeout di lettura - tempo di attesa per un server per inviare le intestazioni di risposta (e iniziare il corpo della risposta) prima di interrompere la richiesta;
  • timeout di connessione - imposta il socket per il timeout dopo un timeout di inattività. Si noti che aumentare il timeout oltre il timeout di connessione TCP a livello di sistema operativo non avrà alcun effetto.

Questo parametro viene inviato al modulo npm.

stringa"2m"
Definisce l'intero ciclo di richiesta - un periodo dall'inizio del download al download completo.stringa"2m"
Definisce le proprietà di timeout per la richiesta di callback.oggetto

Definisce un periodo che specifica due timeout:

  • timeout di lettura - tempo di attesa per un server per inviare le intestazioni di risposta (e iniziare il corpo della risposta) prima di interrompere la richiesta;
  • timeout di connessione - imposta il socket per il timeout dopo un periodo di inattività. Nota che aumentare il timeout oltre il timeout di connessione TCP a livello di sistema operativo non avrà alcun effetto.

Questo parametro viene inviato al modulo npm.

stringa"10m"
Definisce il timeout dell'intero ciclo di richiesta.stringa"10m"
Definisce un percorso dove verranno inviate le richieste di controllo dello stato.stringa"../public/healthcheck.docx"
Definisce il tempo di ritardo dell'inizio della conversione (misurato in millisecondi) dopo che il file modificato è stato chiuso.intero5000
Definisce se il singleton può essere modificato o meno.booleanofalse
Definisce un nome di cartella dove vengono archiviati tutti i file dimenticati.stringa"forgotten"
Definisce un nome di file dimenticato.stringa"output"
Definisce una dimensione massima delle modifiche richieste.intero20000
Definisce se i file protetti da password possono essere aperti o meno.booleanotrue
Definisce se gli utenti anonimi hanno accesso all'editor o ai visualizzatori live o meno.booleanotrue
Definisce l'archiviazione dei dati dell'editor. I valori possibili: "editorDataRedis", "".stringa"editorDataRedis"
Definisce l'archiviazione dei dati dell'editor per il calcolo delle licenze e le statistiche (memoria locale o redis). I valori possibili sono "editorDataMemory", "editorDataRedis", o "". Il valore predefinito "" significa che verrà utilizzato il valore del parametro editorDataStorage. Questo parametro è principalmente utilizzato per un cluster sharded.stringa""
Definisce se il file assemblato viene salvato nel suo formato originale o meno.booleanotrue
Definisce un percorso al modello di "nuovo" file se un file di 0 byte è stato ricevuto dal link per l'apertura.stringa"../../document-templates/new"
Definisce le estensioni che sono consentite per il download tramite il gestore downloadFile.array di stringhe["pdf", "xlsx"]
Definisce se i parametri token richiesti verranno validati. Questo è necessario per la sicurezza. Ad esempio, il token di conversione non verrà utilizzato per aprire un documento.booleanotrue
Definisce se un file senza modifiche può essere salvato forzatamente cliccando sul pulsante Salva.booleanofalse

Questi parametri definiscono la configurazione del server.

Esempio
"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
    }
}
}

Richiesta predefinita

ParametroDescrizioneTipoPredefinito
Definisce le intestazioni di richiesta HTTP predefinite.oggetto
Definisce l'intestazione di richiesta User-Agent predefinita.stringa"Node.js/6.13"
Definisce l'intestazione di richiesta Connection predefinita.stringa"Keep-Alive"
Definisce se i certificati verranno verificati dal Document Server o meno.booleanotrue

Questi parametri definiscono la configurazione della richiesta predefinita.

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

Assemblaggio automatico

ParametroDescrizioneTipoPredefinito
Definisce se il salvataggio automatico forzato è abilitato o meno.booleanofalse
Definisce l'intervallo di tempo in minuti per avviare il salvataggio automatico forzato.stringa"5m"
Definisce il ritardo in minuti tra gli intervalli.stringa"1m"

Questi parametri definiscono la configurazione del salvataggio forzato automatico.

Il salvataggio automatico forzato verrà avviato solo dopo che sono state apportate alcune modifiche al documento. Le versioni vuote non verranno salvate automaticamente. Inoltre, è necessario implementare la versioning dei file sul sistema di gestione dei documenti affinché questo parametro funzioni.
Esempio
"services": {
    "CoAuthoring": {
        "autoAssembly": {
            "enable": false,
            "interval": "5m",
            "step": "1m"
        }
    }
}

Utilità

ParametroDescrizioneTipoPredefinito
Definisce una directory dove sono memorizzati tutti i font.stringa"null"
Definisce i modelli per la ricerca dei file font delle estensioni corrispondenti.stringa"*.ttf;*.ttc;*.otf"
Definisce i formati di immagine supportati per il caricamento.stringa"jpg;jpeg;jpe;png;gif;bmp;svg;tiff;tif"

Questi parametri definiscono la configurazione delle utilità.

Esempio
"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

ParametroDescrizioneTipoPredefinito
Definisce il tipo di database (mysql, mariadb, mssql, postgres, dameng, oracle).stringa"postgres"
Definisce il nome della tabella del database dove sono memorizzate tutte le modifiche ai documenti.stringa"doc_changes"
Definisce il nome della tabella del database dove è memorizzato il risultato della query.stringa"task_result"
Definisce l'host del server del database (nome host o indirizzo IP).stringa"localhost"
Definisce la porta del server del database.intero5432
Definisce un nome di un database da creare all'avvio dell'immagine.stringa"onlyoffice"
Definisce un nuovo nome utente con permessi di superutente per l'account del database.stringa"onlyoffice"
Definisce una password impostata per l'account del database.stringa"onlyoffice"
Definisce il charset del database.stringa"utf8"
Definisce il numero massimo di connessioni utente simultanee al server del database.intero10
Definisce la dimensione massima dei dati che possono essere inviati in una richiesta.intero1048575
Definisce i parametri che possono essere passati direttamente alla libreria node-postgres pool.oggetto
Definisce il numero di millisecondi in cui un client deve rimanere inattivo nel pool e non essere controllato prima di essere disconnesso dal backend e scartato. Impostare a 0 per disabilitare la disconnessione automatica dei client inattivi.intero30000
Definisce un numero di secondi che rappresenta la durata massima.intero60000
Definisce il numero di millisecondi prima che la dichiarazione della query vada in timeout.intero60000
Definisce il numero di millisecondi prima che una chiamata di query vada in timeout.intero60000
Definisce un numero di millisecondi di attesa per una connessione.integer60000
Definisce i parametri del database Dameng.object
Definisce se i nomi delle colonne sono in maiuscolo o meno.booleanfalse
Definisce il caso dei nomi delle colonne.string"lower"
Definisce un numero di millisecondi di attesa per una connessione.integer60000
Definisce se la crittografia del login è abilitata o meno.booleanfalse
Definisce il fuso orario locale.integer0
Definisce un numero di secondi dopo i quali il pool termina le connessioni inattive (non utilizzate nel pool).integer60
Definisce un numero di millisecondi in cui una richiesta di connessione effettuata da un client o un server non riceve una risposta dall'altra parte.integer60000
Definisce un numero di millisecondi in cui i messaggi vengono mantenuti nella coda prima di essere scartati.integer60000
Definisce i parametri del database Oracle.object
Definisce la connessione a Oracle in modalità Thick utilizzando Oracle Instant Client in un cluster.booleantrue
Definisce un numero di secondi di attesa per una connessione.integer60
Definisce i parametri del database MS SQL.object
Definisce le opzioni del database MS SQL.object
Definisce se i dati verranno crittografati prima di essere inviati sulla rete.booleanfalse
Definisce se avviene una crittografia quando non c'è un certificato server verificato.booleantrue
Definisce i parametri del pool di connessione.object
Definisce un numero di millisecondi in cui un client deve rimanere inattivo nel pool e non essere estratto prima di essere disconnesso dal backend e scartato. Impostare a 0 per disabilitare la disconnessione automatica dei client inattivi.integer30000
Definisce i parametri di connessione del database MySQL (incluse le impostazioni SSL) che possono essere passati direttamente al modulo node-mysql2.object
Definisce un numero di millisecondi di attesa per una connessione.integer60000
Definisce un numero di millisecondi prima che una chiamata di query vada in timeout.integer60000

Questi parametri definiscono la configurazione del database.

Esempio
"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": {
                "thin": true,
                "connectTimeout": 60
            },
            "msSqlExtraOptions": {
                "options": {
                    "encrypt": false,
                    "trustServerCertificate": true
                },
                "pool": {
                    "idleTimeoutMillis": 30000
                }
            },
            "mysqlExtraOptions": {
                "connectTimeout": 60000,
                "queryTimeout": 60000
            }
        }
    }
}

Redis

ParametroDescrizioneTipoPredefinito
Definisce il nome del database, "redis" o "ioredis".string"redis"
Definisce il prefisso del nome per tutte le strutture utilizzate in Redis.stringa"ds:"
Definisce l'host del server Redis (nome host o indirizzo IP).stringa"127.0.0.1"
Definisce la porta del server Redis.intero6379
Definisce i parametri (nome utente, password, moduli ecc.) che possono essere passati direttamente alla libreria node-redis createClient.oggetto{}
Definisce i parametri (rootNodes, defaults, moduli ecc.) che possono essere passati direttamente alla libreria node-redis clustering per connettersi al cluster Redis. Questa impostazione ha la priorità sul parametro options per la connessione al singolo Redis. oggetto{}
Definisce i parametri (nome utente, password, moduli ecc.) che possono essere passati direttamente alla libreria ioredis RedisOptions.oggetto
Definisce se la connessione al server sarà ritardata fino all'invio del primo comando o alla chiamata esplicita di redis.connect().booleanotrue
Definisce un elenco di nodi del cluster a cui si desidera connettersi che possono essere passati direttamente alla libreria ioredis cluster per connettersi al cluster Redis. Questa impostazione ha la priorità sul parametro iooptions per la connessione al singolo Redis. array[]
Definisce i parametri (clusterRetryStrategy, dnsLookup, scaleReads ecc.) che possono essere passati direttamente alla libreria ioredis cluster per connettersi al cluster Redis. Questa impostazione ha la priorità sul parametro iooptions per la connessione al singolo Redis. oggetto
Definisce se la connessione al server sarà ritardata fino all'invio del primo comando o alla chiamata esplicita di redis.connect().booleanotrue

Questi parametri definiscono la configurazione di Redis.

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

Servizio PubSub

ParametroDescrizioneTipoPredefinito
Definisce la dimensione massima delle modifiche che possono essere trasmesse tramite PubSub. Se la dimensione supera il valore specificato, le modifiche verranno lette dal database.intero1000

Questo parametro definisce la configurazione del servizio PubSub.

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

Scadenza

ParametroDescrizioneTipoPredefinito
Definisce il tempo per il salvataggio dei blocchi.intero60
Definisce il tempo di vita per lo stato di presenza dell'utente.intero300
Definisce il tempo di vita per i blocchi.intero604800
Definisce il tempo per la modifica degli indici.intero86400
Definisce il tempo per il blocco dei documenti.intero30
Definisce il tempo di vita per i messaggi.intero86400
Definisce il tempo di vita per l'ultimo salvataggio del database eseguito con successo.intero604800
Definisce il tempo di vita per il salvataggio forzato eseguito con successo.intero604800
Definisce il tempo di vita per i blocchi salvati forzatamente in modalità cluster ioredis.intero5000
Definisce il tempo di vita per il salvataggio del database eseguito con successo.intero3600
Definisce il tempo per l'avvio del controllo, durante il quale i vecchi file vengono eliminati dalla cache (ogni due minuti per impostazione predefinita).stringa"0 */2 * * * *"
Definisce il tempo di vita per le cartelle in App_Data.intero86400
Definisce l'orario di inizio del controllo (ogni ora per impostazione predefinita).stringa"00 00 */1 * * *"
Definisce il numero di cartelle di documenti eliminate simultaneamente dalla cache.intero100

Definisce la durata della sessione inattiva. Questo parametro consente di terminare la sessione di modifica per un utente inattivo. Viene anche utilizzato per inizializzare la procedura di salvataggio del documento terminando l'ultima sessione di modifica. Quindi, definisce il tempo dopo il quale un utente inattivo verrà disconnesso dalla sessione di modifica. Il formato del valore è "1s", "1m", "1h", "1d" ecc.

Si prega di notare che per inattività si intende l'assenza di qualsiasi azione nell'editor, incluso il movimento del cursore.
stringa"1h"
Definisce la durata di vita per qualsiasi sessione di modifica.stringa"30d"
Definisce il tempo prima che il sessionidle o sessionabsolute ttl scada quando viene inviato un messaggio di avviso.stringa"2m"
Definisce il tempo di vita per i file PEM con segreti.stringa"1h"
Definisce il tempo per controllare il ttl dei file PEM.stringa"10m"
Definisce il tempo in cui l'utente può riaprire il file dopo che si è verificato un errore a causa dell'apertura di un file già salvato utilizzando la vecchia chiave.stringa"5m"
Definisce il tempo di vita per l'elenco degli utenti unici del mese.stringa"1y"

Questi parametri definiscono le impostazioni di scadenza.

Esempio
"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"
    }
}
}

Filtro IP

ParametroDescrizioneTipoPredefinito

Definisce le regole del filtro IP che contengono i seguenti parametri:

  • indirizzo - l'indirizzo IP dell'integratore. Questo parametro può contenere IP nel formato X.X.X.X per ipv4 o nel formato xxxx.xxxx.xxxx.xxxx.xxxx.xxxx.xxxx.xxxx per ipv6, nome DNS o carattere jolly * per sostituire qualsiasi simbolo/simboli,
    tipo: stringa,
    esempio: "indirizzo_ip";
  • consentito - specifica se l'indirizzo IP è attendibile o meno,
    tipo: booleano,
    esempio: true.
array di oggetti
Definisce se il filtro IP viene utilizzato per la richiesta o meno.booleanofalse
Definisce un codice di errore per il filtro IP.intero403

Questi parametri definiscono la configurazione del filtro IP.

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

Agente di Filtraggio delle Richieste

ParametroDescrizioneTipoPredefinito
Definisce se è consentito connettere indirizzi IP privati o meno. Questo include indirizzi IP privati e indirizzi IP riservati.booleanofalse
Definisce se è consentito connettere indirizzi IP meta o meno. L'indirizzo meta può essere 0.0.0.0 (IPv4) o :: (IPv6) - un indirizzo meta che instrada un altro indirizzo.booleanofalse

Questi parametri definiscono la configurazione dell'Agente di Filtraggio delle Richieste.

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

Chiave segreta

ParametroDescrizioneTipoPredefinito

Definisce i parametri di una chiave segreta per generare un token nelle richieste del browser lato client a ONLYOFFICE Docs:

  • stringa - la chiave segreta,
    tipo: stringa,
    esempio: "segreto";
  • file - il file PEM dove è memorizzato il segreto,
    tipo: stringa,
    esempio: "".
oggetto

Definisce i parametri di una chiave segreta per generare un token nelle richieste HTTP in entrata con i comandi dal servizio di archiviazione documenti al servizio di comando documenti, servizio di conversione documenti e servizio di costruzione documenti:

  • stringa - la chiave segreta,
    tipo: stringa,
    esempio: "secret";
  • file - il file PEM dove è memorizzato il segreto,
    tipo: stringa,
    esempio: "".
oggetto

Definisce i parametri di una chiave segreta per generare un token nelle richieste HTTP in uscita verso l'indirizzo callbackUrl dal servizio di modifica documenti:

  • stringa - la chiave segreta,
    tipo: stringa,
    esempio: "secret";
  • file - il file PEM dove è memorizzato il segreto,
    tipo: stringa,
    esempio: "".
oggetto

Definisce i parametri di una chiave segreta per generare il token di sessione:

  • stringa - la chiave segreta,
    tipo: stringa,
    esempio: "secret";
  • file - il file PEM dove è memorizzato il segreto,
    tipo: stringa,
    esempio: "".
oggetto

Questi parametri definiscono la configurazione della chiave segreta.

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

Token

ParametroDescrizioneTipoPredefinito
Definisce se i token sono abilitati o meno.oggetto
Definisce se un token nelle richieste del browser lato client è abilitato o meno.booleanofalse
Definisce se i token nelle richieste HTTP sono abilitati o meno.oggetto
Definisce se un token nelle richieste HTTP in entrata è abilitato o meno.booleanofalse
Definisce se un token nelle richieste HTTP in uscita è abilitato o meno.booleanofalse
Definisce la configurazione del token del browser.oggetto
Definisce se il token del browser è uguale al token delle richieste in entrata (true) o meno (false).booleanotrue
Definisce la configurazione di un token dalle richieste in entrata.oggetto
Definisce l'intestazione HTTP che verrà utilizzata per inviare il token della richiesta in entrata.stringa"Authorization"
Definisce un prefisso nell'intestazione HTTP che verrà utilizzato per inviare il token della richiesta in entrata.stringa"Bearer "
Definisce se un token è abilitato nel corpo della richiesta in entrata o meno.booleanofalse
Definisce la configurazione di un token dalle richieste in uscita.oggetto
Definisce l'intestazione HTTP che verrà utilizzata per inviare il token della richiesta in uscita.stringa"Authorization"
Definisce un prefisso nell'intestazione HTTP che verrà utilizzato per inviare il token della richiesta in uscita.stringa"Bearer "
Definisce un algoritmo che viene utilizzato per firmare il token della richiesta in uscita.stringa"HS256"
Definisce un periodo in cui il token della richiesta in uscita scade.stringa"5m"
Definisce se un token è abilitato nel corpo della richiesta in uscita o meno.booleanofalse
Definisce l'espressione regolare che specifica gli URL dai quali l'autorizzazione dovrebbe essere esclusa. La stringa vuota significa che questa opzione è disabilitata.stringa""
Definisce la configurazione del token di sessione.oggetto
Definisce un algoritmo utilizzato per firmare il token di sessione.stringa"HS256"
Definisce un periodo di scadenza del token di sessione.stringa"30d"
Definisce le opzioni di verifica del token.oggetto
Definisce un numero di secondi accettabile per gestire le differenze di orario tra diversi server.intero60

Questi parametri definiscono la configurazione del token.

Esempio
"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
}
}
}
}

Plugin

ParametroDescrizioneTipoPredefinito
Definisce un percorso alla cartella dove sono memorizzati tutti i plugin.stringa"/sdkjs-plugins"
Definisce un elenco di plugin che vengono eseguiti automaticamente.lista[]

Questi parametri definiscono la configurazione dei plugin.

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

Temi

ParametroDescrizioneTipoPredefinito
Definisce un percorso alla cartella dove sono memorizzati tutti i file json con i temi di colore personalizzati.stringa"/web-apps/apps/common/main/resources/themes"

Questo parametro definisce le proprietà dei temi di colore personalizzati.

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

Editor

ParametroDescrizioneTipoPredefinito
Definisce un percorso al correttore ortografico.stringa""
Definisce le impostazioni per riconnettere l'editor al server.oggetto
Definisce un numero massimo di tentativi per riconnettere l'editor.intero50
Definisce il ritardo tra i tentativi di riconnessione dell'editor.stringa"2s"
Definisce se le modifiche al documento sono salvate in formato binario (true) o JSON (false).booleanofalse
Definisce una dimensione massima del payload di WebSocket.stringa"1.5MB"
Definisce un limite alla dimensione totale delle modifiche apportate al documento. Quando il limite viene superato, l'utente riceve una finestra di dialogo con un suggerimento per annullare l'ultima azione o passare alla modalità offline. Questa impostazione è disabilitata per impostazione predefinita.stringa"150MB"

Questi parametri definiscono la configurazione dell'editor.

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

SockJs

ParametroDescrizioneTipoPredefinito
Definisce un percorso al file sockjs.min.js.stringa""
Definisce se CORS sarà disabilitato o meno. Il valore true previene la vulnerabilità dell'intestazione Access-Control-Allow-Origin.booleanotrue
Definisce se il protocollo WebSocket è abilitato o meno.booleanotrue

Questi parametri definiscono la configurazione di SockJs.

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

Socket.IO

ParametroDescrizioneTipoPredefinito
Definisce le proprietà della connessione.oggetto
Definisce il percorso che viene catturato sul lato server.stringa"/doc/"
Definisce se i file del client verranno serviti o meno.booleanofalse
Definisce il periodo di timeout in millisecondi entro il quale il client deve rispondere con un pong al ping del server. Se non c'è risposta, il server considera che la connessione sia chiusa. La connessione tra il server e il client viene verificata ogni pingInterval millisecondi. intero20000
Definisce l'intervallo di tempo in millisecondi, utilizzato per verificare se la connessione è ancora attiva tra il server e il client. Il server invia un pacchetto ping al client, e se il client non risponde con un pong entro un periodo di pingTimeout, il server considera che la connessione sia chiusa. intero25000
Definisce il numero massimo di byte che un singolo messaggio può avere, prima di chiudere il socket.intero1e8

Questi parametri definiscono la configurazione del modulo Socket.IO.

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

Opzioni di callback backoff

ParametroDescrizioneTipoPredefinito
Definisce il numero massimo di volte per riprovare l'operazione.intero3
Definisce i timeout di callback backoff.oggetto
Definisce il fattore esponenziale da utilizzare.intero2
Definisce il numero di millisecondi prima di iniziare il primo tentativo.intero1000
Definisce il numero massimo di millisecondi tra due tentativi.intero2147483647
Definisce se i timeout sono randomizzati moltiplicando con un fattore tra 1 e 2 o meno.booleanofalse
Definisce gli stati HTTP del callback backoff.stringa"429,500-599"

Questi parametri definiscono le opzioni di callback backoff.

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

Licenza

ParametroDescrizioneTipoPredefinito
Definisce un percorso al file di licenza.stringa""
Definisce un intervallo percentuale delle connessioni e visualizzazioni connessioni limitazioni, superando le quali appare un avviso di limite di licenza nei log. intero70

Definisce il tipo di pacchetto di licenza: 2 - Developer Edition.

Questo parametro è impostato al momento della costruzione della versione. Non è necessario configurarlo manualmente.
intero2
Definisce il tempo prima della scadenza della licenza quando viene inviato un messaggio di avviso.stringa"30d"

Questi parametri definiscono la configurazione della licenza.

Esempio
"license" : {
    "license_file": "",
    "warning_limit_percents": 70,
    "packageType": 2,
    "warning_license_expiration": "30d"
}

Convertitore

ParametroDescrizioneTipoPredefinito
Definisce le proprietà del convertitore.oggetto
Definisce una dimensione massima del file richiesto (misurata in byte).integer104857600
Definisce le proprietà di timeout per il download del file convertito.object

Definisce un periodo che specifica due timeout:

  • timeout di lettura - tempo di attesa per il server per inviare le intestazioni di risposta (e iniziare il corpo della risposta) prima di interrompere la richiesta;
  • timeout di connessione - imposta il socket per il timeout dopo un periodo di inattività. Si noti che aumentare il timeout oltre il timeout di connessione TCP a livello di sistema operativo non avrà alcun effetto.

Questo parametro viene inviato al modulo npm.

string"2m"
Definisce il timeout dell'intero ciclo di richiesta.string"2m"
Definisce un numero massimo di tentativi per scaricare il file convertito.integer3
Definisce il ritardo tra i tentativi di scaricare il file convertito.integer1000
Definisce un numero massimo di processi di conversione che possono essere attivi contemporaneamente.integer1
Definisce un percorso alla cartella con i font.string"null"
Definisce un percorso alla cartella con i temi delle presentazioni.string"null"
Definisce un percorso al convertitore di file x2t.string"null"
Definisce un percorso all'applicazione Document Builder.string"null"
Definisce i parametri aggiuntivi per l'esecuzione di x2t.string""
Definisce i parametri che possono essere passati direttamente alla libreria node.js child_process.spawn (solo per l'esecuzione di x2t).object{}
Definisce un percorso ai file di errore.string""
Definisce la dimensione del buffer StreamWriter.integer8388608
Definisce un numero massimo di riconsegne dei messaggi.integer2
Definisce i limiti per i file di input.object
Definisce i tipi di file OOXML per i quali sono specificati i limiti (documenti di testo/fogli di calcolo/presentazioni). Questo non include altri oggetti, come le immagini.string"docx;dotx;docm;dotm"/"xlsx;xltx;xlsm;xltm"/"pptx;ppsx;potx;pptm;ppsm;potm"
Definisce le proprietà dell'archivio zip.object
Definisce la dimensione totale del file non compresso per documenti di testo/fogli di calcolo/presentazioni.string"50MB"/"300MB"/"50MB"
Definisce il modello di nome per i file di cui vengono conteggiate le dimensioni.string"*.xml"

Questi parametri definiscono la configurazione del convertitore di file.

Esempio
"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"
            }
            }
        ]
    }
}
Voci con l'etichetta tag:
Sfoglia tutti i tag