OxOffice Online 設定檔說明
OxOOL 設定檔位於 /etc/oxool/oxoolwsd.xml 以下介紹設定檔內容代表之意義與其可設定的值
<allowed_languages>
預設:de_DE en_GB en_US es_ES fr_FR it nl pt_BR pt_PT ru
說明:設定支援的拼字檢查器、語法檢查器、同義詞庫、連字號的語系,注意,若啟用太多會影響到啟動的效能。
</allowed_languages>
<sys_template_path>
預設:systemplate(系統編譯時已決定的變數)
說明:放置 LibreOfficeKit 呼叫使用的 LibreOffice 動態函式庫所需的執行時期環境,用以做為子行程 chroot jails 環境來源範本。
</sys_template_path>
<child_root_path>
預設:child_root_path(系統編譯時已決定的變數)
說明:用來建立子處理程序 chroot jails 環境的目錄路徑,應與 systemplate 在同一個檔案系統(分割區)上。
</child_root_path>
<mount_jail_tree>
預設:true
說明:控制是否要掛載 systemplate 與 lotemplate,這會比連結或複製每個檔案來的快。
</mount_jail_tree>
<server_name>
預設:空
說明:執行 oxoolwsd 主程式的主機名稱和連接埠號,如果設定為空,那麼會取決於連線需求。但 OxOOL 主機若在反向代理主機後,或是主機名稱無法直接可達的話則必須設定。
</server_name>
<client_port_number>
預設:9980
說明:OxOOL 要監聽的連接埠號。
</client_port_number>
<file_server_root_path>
預設:loleaflet/../
說明:指向檔案伺服器的 root 路徑,應包含 loleaflet 的目錄。
</file_server_root_path>
<hexify_embedded_urls>
預設:false
說明:保護編碼的 URL 不被中間的節點解碼。在 Azure 部署中較有用。
</hexify_embedded_urls>
<convert_to>
預設:false
說明:是否啟用檔案格式轉換。
</convert_to>
<memproportion>
預設:80.0
說明:設定 OxOffice 最大可消耗的系統記憶體百分比,達到後便會開始清理空閒的文件。
</memproportion>
<num_prespawn_children>
預設:1
說明:預設一開機就啟動,用以等待新連線的子處理程序數量。
</num_prespawn_children>
<per_document>
說明:關於文件的設定,包含 OxOffice 的核心設定。
<max_concurrency>
預設:8
說明:處理單一文件時,所使用的最大執行緒數量。
</max_concurrency>
<batch_priority>
預設:5
說明:針對批次處理程序(如 convert-to)降低優先程度,以避免搶走互動式處理程序的資源。
</batch_priority>
<document_signing_url>
預設:無
說明:簽署文件伺服器的端點 URL,若留空則停用簽署文件功能。
</document_signing_url>
<redlining_as_comments>
預設:true
說明:若設定為 true,則會在註解中顯示紅線。
</redlining_as_comments>
<idle_timeout_secs>
預設:3600
說明:設定閒置多久後連線中斷,單位為秒,預設為1小時。
</idle_timeout_secs>
<idlesave_duration_secs>
預設:1800
說明:設定若文件每經修改並閒置幾秒後就自動儲存一次檔案,預設為30秒,設定為0或負值即為停用 。
</idlesave_duration_secs>
<autosave_duration_secs>
預設:1800
說明:設定若文件每經修改後,經幾秒後就自動儲存一次檔案,預設為300秒 ,設定為0或負值即為停用。
</autosave_duration_secs>
<always_save_on_exit>
預設:false
說明:設定不管文件有沒有修改過,一旦關閉文件的編輯畫面就會強制儲存,預設為 false 。
</always_save_on_exit>
<limit_virt_mem_kb>
預設:0
說明:設定每個處理文件的行程可使用的最大虛擬記憶體,0 為未限制,至少要有 1700kb。
</limit_virt_mem_kb>
<limit_stack_mem_kb>
預設:8000
說明:設定每個處理文件的行程可使用的最大stack大小,0 為未限制。
</limit_stack_mem_kb>
<limit_file_size_mb>
預設:0
說明:設定每個處理文件的行程可開啟的最大檔案大小,0 為未限制。
</limit_file_size_mb>
<limit_num_open_files>
預設:0
說明:設定每個處理文件的行程可開啟的最多檔案數量,0 為未限制。
</limit_num_open_files>
<limit_load_secs>
預設:100
說明:設定開啟每個檔案的最大等待秒數,0 為未限制。
</limit_load_secs>
<limit_convert_secs>
預設:100
說明:設定轉換每個檔案的最大等待秒數,0 為未限制。
</limit_convert_secs>
<cleanup>
預設:false
說明:檢查異常消耗資源的文件並砍除對應的 LibreOfficeKit 處理程序,由以下的幾個選項決定其閾值。
<cleanup_interval_ms>
預設:10000
說明:兩次檢查間的間隔(單位為毫秒)。
</cleanup_interval_ms>
<bad_behavior_period_secs>
預設:60
說明:文件被認定是消耗資源並被砍除對應 LibreOfficeKit 處理程序的最小時間間隔。若此間隔內被認定為異常消耗資源的文件不符合條件則會重設間隔(單位為秒)。
</bad_behavior_period_secs>
<idle_time_secs>
預設:300
說明:文件被認定是異常消耗資源狀態候選的最小閒置時間(單位為秒)。
</idle_time_secs>
<limit_dirty_mem_mb>
預設:3072
說明:文件被認定是異常消耗資源狀態候選的最小記憶體使用量(單位為 MB)。
</limit_dirty_mem_mb>
<limit_cpu_per>
預設:85
說明:文件被認定是異常消耗資源狀態候選的最小 CPU 使用量(單位為百分比)。
</limit_cpu_per>
</cleanup>
</per_document>
<per_view>
說明:與開啟文件瀏覽文件相關的設定。
<out_of_focus_timeout_secs>
預設:60
說明:設定當在瀏覽器分頁在失去焦點後,最多在幾秒後就停止更新文件及調暗視窗。
</out_of_focus_timeout_secs>
<idle_timeout_secs>
預設:900
說明:設定當在使用者完全沒有動作時(即便目前焦點在該瀏覽器分頁上),最多在幾秒後就停止更新文件及調暗視窗。
</idle_timeout_secs>
</per_view>
<loleaflet_html>
預設:loleaflet.html
說明:OxOffice Online 的主網頁檔案名稱,請注意,變更完這個設定後,同時也要將以下目錄的網頁名稱變更為與設定檔一致:/usr/share/oxool/loleaflet/dist。
</loleaflet_html>
<logging>
說明:關於記錄檔的設定參數。
<color>
預設:true
說明:是否啟用記錄檔的顏色機制。
</color>
<level>
預設:warning
說明:記錄檔的level設定值,可以設定0-8個等級,或是可以設定為:none(關閉記錄),fatal,critical,error,warning,notice,information,debug,trace。
</level>
<protocol>
預設:false
說明:啟動時就開始記錄最小化的客戶端 JavaScript 協定紀錄(編譯時決定是否啟用)。
</protocol>
<lokit_sal_log>
預設:-INFO-WARN
說明:微調來自 LibreOfficeKit 的紀錄檔訊息。預設會停用來自 LibreOfficeKit 的紀錄檔訊息。
</lokit_sal_log>
<file>
說明:關於記錄檔的相關參數設定。
<property name=“path“>
預設:/var/log/oxoolwsd.log
說明:OxOffice Online 的記錄檔路徑。
<property name=“rotation“>
預設:daily
說明:設定檔案 rotation 機制的策略,可參考 Poco 的 FileChannel 機制。
<property name=“archive“>
預設:timestamp
說明:設定要在封存的紀錄檔名稱上附加時間戳 (timestamp) 或編號 (number)。
<property name=“times“>
預設:local
說明:指定要將紀錄檔 rotation 的時間視為本機時間 (local) 或 UTC 時間。有效的值為 local 與 utc。
<property name=“compress“>
預設:true
說明:設定是否要啟動紀錄檔壓縮功能。
<property name=“purgeAge“>
預設:30 days
說明:紀錄檔最多保存天數,可參考 Poco 的 FileChannel 機制。
<property name=“purgeCount“>
預設:100
說明:紀錄檔最大的保存數,設為 none 以停用清除紀錄檔的功能,可參考 Poco 的 FileChannel 機制。
<property name=“rotateOnOpen“>
預設:true
說明:設定是否在開啟時啟動紀錄檔 rotation 的機制。
<property name=“flush“>
預設:false
說明:設定是否要在記錄每行 log 時啟用 flush 機制,啟用時可能會影響效能,若設定不啟用時,來自不同處理程序的 log 可能不會依照時間順序記錄。
</file>
<anonymize>
<anonymize_user_data>
預設:false
說明:設定是否啟用對紀錄檔中的使用者資料進行匿名/模糊處理,預設為 false。
</anonymize_user_data>
<anonymization_salt>
預設:82589933
說明:設定對紀錄檔中的使用者資料進行匿名/模糊處理時要使用的 salt。使用 64 位元隨機數。
</anonymization_salt>
</anonymize>
</logging>
<loleaflet_logging>
預設:false
說明:設定是否將紀錄檔同時寫入瀏覽器的主控台。
</loleaflet_logging>
<trace_event>
預設:false
說明:控制是否開啟 Chrome Trace Event 檔案的產生流程。
<path>
預設:空
說明:輸出檔案的路徑設定。
</path>
</trace_event>
<trace>
預設:false
說明:將指令與通知紀錄下來。
<path>
預設:空
說明:輸出檔案的路徑設定。
</path>
<filter>
<message>
預設:空
說明:設定排除特定記錄以節省空間的正規表示式規則。
</message>
</filter>
<outgoing>
<record>
預設:false
說明:設定是否要記錄輸出的訊息。
</record>
</outgoing>
</trace>
<net>
說明:網路相關設定。
<proto>
預設:all
說明:設定開放使用 IPv4 或是 IPv6 或是全部的網路協定。
</proto>
<listen>
預設:any
說明:設定主程式可綁定的位置,可設為 any 或 loopback。
</listen>
<service_root>
預設:無
說明:設定所有頁面、websocket 等路徑的前綴字串。
</service_root>
<proxy_prefix>
預設:false
說明:設定是否啟用傳遞給重新導向請求的 ProxyPrefix。
</proxy_prefix>
<post_allow>
預設:true
說明:設定允許/拒絕開放 POST(REST) 的 IP 來源。
<host>
預設:
192\.168\.[0-9]{1,3}\.[0-9]{1,3}
::ffff:192\.168\.[0-9]{1,3}\.[0-9]{1,3}
127\.0\.0\.1
::ffff:127\.0\.0\.1
::1
172\.17\.[0-9]{1,3}\.[0-9]{1,3}
::ffff:172\.17\.[0-9]{1,3}\.[0-9]{1,3}
</host>
</post_allow>
<frame_ancestors>
預設:無
說明:指定誰可以嵌入 OxOffice Online 的 iframe(oxoolwsd 與 WOPI host 總是允許),以空格分隔多個主機。
</frame_ancestors>
<connection_timeout_secs>
預設:30
說明:指定由 oxoolwsd 發起(如 WOPI 連線)的連線、傳送、接收等動作的逾時秒數。
</connection_timeout_secs>
</net>
<ssl>
說明:OxOffice Online 的 SSL 設定。
<enable>
預設:false
說明:設定是否要啟動 SSL 機制。
</enable>
<termination>
預設:true
說明:如果是透過代理伺服器設定連線,則此選項須設定為 true。
</termination>
<cert_file_path>
預設:/etc/oxool/cert.pem
說明:設定憑證檔的路徑,若是使用代理伺服器則不需變更,可使用代理伺服器的設定。
</cert_file_path>
<key_file_path>
預設:/etc/oxool/key.pem
說明:設定憑證金鑰的路徑,若是使用代理伺服器則不需變更,可使用代理伺服器的設定。
</key_file_path>
<ca_file_path>
預設:/etc/oxool/ca-chain.cert.pem
說明:設定憑證 ca 檔的路徑,若是使用代理伺服器則不需變更,可使用代理伺服器的設定。
</ca_file_path>
<cipher_list>
預設:ALL:!ADH:!LOW:!EXP:!MD5:@STRENGTH
說明:設定可接受的 OpenSSL 加密演算法清單。
</cipher_list>
<hpkp>
說明:啟用 HPKP。
<max_age>
預設:1000
說明:HPKP max-age 指令,以秒為單位,設定瀏覽器應該保留 pins 的時間。
</max_age>
<report_uri>
預設:空
說明:HPKP report-uri 指令,pin 的驗證錯誤回報 URL。
</report_uri>
<pins>
說明:要 pin 的金鑰的 Base64 編碼 SPKI 指紋。
<pin></pin>
</pins>
</hpkp>
</ssl>
<security>
說明:【警告】更改這些預設值可能會讓系統面臨重大風險。
<seccomp>
預設:true
說明:設定使用 seccomp 系統呼叫 filtering。
</seccomp>
<capabilities>
預設:true
說明:設定使用 chroot jails 的機制。
</capabilities>
<jwt_expiry_sec>
預設:1800
說明:管理介面的 JWT 權杖過期時間(以秒為單位)。
</jwt_expiry_sec>
<enable_macros_execution>
預設:false
說明:指定是否要執行巨集。這會啟用 Basic、Beanshell、JavaScript 與 Python 指令稿。若設定為 false,則下方的 macro_security_level 設定會被忽略。若設定為 true,則前述設定會用來指定巨集的安全層級。
</enable_macros_execution>
<macro_security_level>
預設:1
說明:巨集的安全層級。1(中等)必須在執行從未受信任的來源執行巨集前先進行確認。0(低,不建議)是所有巨集都可不經確認即執行。
</macro_security_level>
<enable_metrics_unauthenticated>
預設:false
說明:啟用時,/oxool/getMetrics 即不需要驗證。
</enable_metrics_unauthenticated>
</security>
<watermark>
說明:浮水印相關設定。
<editing>
預設:false
說明:若啟用,則會在編輯文件時顯示浮水印。
</editing>
<printing>
預設:false
說明:若啟用,則會在列印文件或將其匯出為 PDF 檔案時顯示浮水印。
</printing>
<opacity>
預設:0.2
說明:畫面上浮水印的不透明度,值可從 0.0 到 1.0。
</opacity>
<angle>
預設:45
說明:浮水印角度。
</angle>
<font>
預設:無
說明:字型名稱。
</font>
<color>
預設:#000000
說明:浮水印文字色彩。
</color>
<bold>
預設:false
說明:浮水印文字是否要為粗體。
</bold>
<italic>
預設:false
說明:浮水印文字是否要為義式斜體。
</italic>
<outline>
預設:false
說明:浮水印文字是否要變為中空。
</outline>
<shadow>
預設:false
說明:浮水印文字是否要帶有陰影。
</shadow>
<text>
預設:無
說明:輸入時要在畫面上顯示的浮水印文字。
</text>
</watermark>
<welcome>
說明:歡迎畫面的相關設定。
<enable>
預設:編譯時決定的參數
說明:控制是否要在新安裝及更新時對使用者顯示歡迎畫面。
</enable>
<enable_button>
預設:編譯時決定的參數
說明:決定歡迎畫面是否應該要有解釋性的按鈕而非關閉按鈕。
</enable_button>
<path>
預設:loleaflet/welcome
說明:歡迎畫面網頁的路徑。
</path>
</welcome>
<user_interface>
說明:編輯器使用者介面的相關設定。
<pdf_viewer_resolution_dpi>
預設:600
說明:檢視程式在繪製 PDF 內容時要使用的 DPI。
</pdf_viewer_resolution_dpi>
<use_integration_theme>
預設:false
說明:是否要使用來自 Nextcloud Office 等整合程式的佈景主題。
</use_integration_theme>
</user_interface>
<storage>
說明:不同後端儲存空間的連線設定。
<filesystem>
預設:false
說明:是否啟動讓 OxOffice Online 直接編輯本機檔案的機制,建議在正式佈署時確定更改為 false。
<wopi>
預設:true
說明:允許/拒絕 wopi storage,與 webdav 互斥。
<host>
預設:
true:
localhost
127\.0\.0\.1
10\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}
172\.1[6789]\.[0-9]{1,3}\.[0-9]{1,3}
172\.2[0-9]\.[0-9]{1,3}\.[0-9]{1,3}
172\.3[01]\.[0-9]{1,3}\.[0-9]{1,3}
192\.168\.[0-9]{1,3}\.[0-9]{1,3}
false:
192\.168\.1\.1
說明:設定 wopi host 的主機名稱或是 IP 位置,如果主機名稱或 IP 中包含了「.」,則需加入「\」跳脫字元,例如:原本是 www.ossii.com.tw,那麼在 wopi host 內需設定成為「www\.ossii\.com\.tw」。
</host>
<max_file_size>
預設:0
說明:可載入的最大文件大小(以位元組為單位),0 代表無限制。
</max_file_size>
<reuse_cookies>
預設:false
說明:若啟用,則會捕捉來自瀏覽器的 cookies,並在 WOPI 請求中設定。
</reuse_cookies>
<locking>
說明:鎖定相關設定。
<refresh>
說明:設定應多常重新取得儲存伺服器的鎖,以秒為單位(預設為900秒,亦即15分鐘),設為 0 則不更新。
</refresh>
</locking>
</wopi>
<webdav>
預設:false
說明:允許/拒絕 webdav storage,與 wopi 互斥。
<host>
預設:false: localhost
說明:設定 webdav host的主機名稱或是 IP 位置,如果主機名稱或 IP 中間包含了「.」,則需加入「\」跳脫字元,例如:原本是 www.ossii.com.tw,那麼在 webdav host 內需設定成為「www\.ossii\.com\.tw」。
</host>
</webdav>
<ssl>
說明:OxOffice Online 的 SSL 設定。
<as_scheme>
預設:true
說明:設定後,將會啟用專門針對 WOPI URI 結構的 SSL 來供儲存空間使用。
</as_scheme>
<enable>
預設:false
說明:設定是否要啟動 SSL 機制。
</enable>
<cert_file_path>
預設:/etc/oxool/cert.pem
說明:設定憑證檔的路徑,若是使用代理伺服器則不需變更,可使用代理伺服器的設定。
</cert_file_path>
<key_file_path>
預設:/etc/oxool/key.pem
說明:設定憑證金鑰的路徑,若是使用代理伺服器則不需變更,可使用代理伺服器的設定。
</key_file_path>
<ca_file_path>
預設:/etc/oxool/ca-chain.cert.pem
說明:設定憑證 ca 檔的路徑,若是使用代理伺服器則不需變更,可使用代理伺服器的設定。
</ca_file_path>
<cipher_list>
預設:ALL:!ADH:!LOW:!EXP:!MD5:@STRENGTH
說明:設定可接受的 OpenSSL 加密演算法清單。
</cipher_list>
</ssl>
</storage>
<tile_cache_persistent>
預設:true
說明:設定是否在相同文件的不同編輯 session 保留 tile cache。
</tile_cache_persistent>
<admin_console>
說明:OxOffice Online 網頁端管理介面設定參數,預設登入的連線位置為:http(s)://youroxoolip:9980/loleaflet/dist/admin/admin.html。
<enable>
預設:true
說明:啟用管理功能。
</enalbe>
<enable_pam>
預設:false
說明:啟用 PAM 使用者認證機制。
</enalbe_pam>
<username>
預設:admin
說明:設定管理介面的登入帳號,若啟用 PAM 機制則會忽略此設定。
</username>
<password>
預設:@administrator1
說明:設定管理介面的登入密碼。在多數平台上已被棄用,建議使用 PAM 或 oxoolconfig 設定安全的密碼。
</password>
</admin_console>
<monitors>
預設:空
說明:設定連線的伺服器位置。
</monitors>