mirror of
https://github.com/haiwen/seafile-admin-docs.git
synced 2025-12-26 02:32:50 +00:00
4147 lines
100 KiB
HTML
4147 lines
100 KiB
HTML
|
||
<!doctype html>
|
||
<html lang="en" class="no-js">
|
||
<head>
|
||
|
||
<meta charset="utf-8">
|
||
<meta name="viewport" content="width=device-width,initial-scale=1">
|
||
|
||
|
||
<meta name="author" content="seafile">
|
||
|
||
|
||
<link rel="canonical" href="https://haiwen.github.io/seafile-admin-docs/config/seafile-conf/">
|
||
|
||
|
||
<link rel="prev" href="../ccnet-conf/">
|
||
|
||
|
||
<link rel="next" href="../seahub_settings_py/">
|
||
|
||
|
||
<link rel="icon" href="../../media/favicon.ico">
|
||
<meta name="generator" content="mkdocs-1.6.1, mkdocs-material-9.5.39">
|
||
|
||
|
||
|
||
<title>seafile.conf - Seafile Admin Manual</title>
|
||
|
||
|
||
|
||
<link rel="stylesheet" href="../../assets/stylesheets/main.8c3ca2c6.min.css">
|
||
|
||
|
||
<link rel="stylesheet" href="../../assets/stylesheets/palette.06af60db.min.css">
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
||
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,300i,400,400i,700,700i%7CRoboto+Mono:400,400i,700,700i&display=fallback">
|
||
<style>:root{--md-text-font:"Roboto";--md-code-font:"Roboto Mono"}</style>
|
||
|
||
|
||
|
||
<link rel="stylesheet" href="../../stylesheets/extra.css">
|
||
|
||
<script>__md_scope=new URL("../..",location),__md_hash=e=>[...e].reduce(((e,_)=>(e<<5)-e+_.charCodeAt(0)),0),__md_get=(e,_=localStorage,t=__md_scope)=>JSON.parse(_.getItem(t.pathname+"."+e)),__md_set=(e,_,t=localStorage,a=__md_scope)=>{try{t.setItem(a.pathname+"."+e,JSON.stringify(_))}catch(e){}}</script>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
</head>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<body dir="ltr" data-md-color-scheme="default" data-md-color-primary="white" data-md-color-accent="indigo">
|
||
|
||
|
||
<input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer" autocomplete="off">
|
||
<input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search" autocomplete="off">
|
||
<label class="md-overlay" for="__drawer"></label>
|
||
<div data-md-component="skip">
|
||
|
||
|
||
<a href="#seafileconf-settings" class="md-skip">
|
||
Skip to content
|
||
</a>
|
||
|
||
</div>
|
||
<div data-md-component="announce">
|
||
|
||
</div>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<header class="md-header md-header--shadow" data-md-component="header">
|
||
<nav class="md-header__inner md-grid" aria-label="Header">
|
||
<a href="../.." title="Seafile Admin Manual" class="md-header__button md-logo" aria-label="Seafile Admin Manual" data-md-component="logo">
|
||
|
||
<img src="../../media/seafile-transparent-1024.png" alt="logo">
|
||
|
||
</a>
|
||
<label class="md-header__button md-icon" for="__drawer">
|
||
|
||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3 6h18v2H3zm0 5h18v2H3zm0 5h18v2H3z"/></svg>
|
||
</label>
|
||
<div class="md-header__title" data-md-component="header-title">
|
||
<div class="md-header__ellipsis">
|
||
<div class="md-header__topic">
|
||
<span class="md-ellipsis">
|
||
Seafile Admin Manual
|
||
</span>
|
||
</div>
|
||
<div class="md-header__topic" data-md-component="header-topic">
|
||
<span class="md-ellipsis">
|
||
|
||
seafile.conf
|
||
|
||
</span>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<label class="md-header__button md-icon" for="__search">
|
||
|
||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5"/></svg>
|
||
</label>
|
||
<div class="md-search" data-md-component="search" role="dialog">
|
||
<label class="md-search__overlay" for="__search"></label>
|
||
<div class="md-search__inner" role="search">
|
||
<form class="md-search__form" name="search">
|
||
<input type="text" class="md-search__input" name="query" aria-label="Search" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="search-query" required>
|
||
<label class="md-search__icon md-icon" for="__search">
|
||
|
||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5"/></svg>
|
||
|
||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11z"/></svg>
|
||
</label>
|
||
<nav class="md-search__options" aria-label="Search">
|
||
|
||
<button type="reset" class="md-search__icon md-icon" title="Clear" aria-label="Clear" tabindex="-1">
|
||
|
||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"/></svg>
|
||
</button>
|
||
</nav>
|
||
|
||
</form>
|
||
<div class="md-search__output">
|
||
<div class="md-search__scrollwrap" tabindex="0" data-md-scrollfix>
|
||
<div class="md-search-result" data-md-component="search-result">
|
||
<div class="md-search-result__meta">
|
||
Initializing search
|
||
</div>
|
||
<ol class="md-search-result__list" role="presentation"></ol>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
<div class="md-header__source">
|
||
<a href="https://github.com/haiwen/seafile-admin-docs/" title="Go to repository" class="md-source" data-md-component="source">
|
||
<div class="md-source__icon md-icon">
|
||
|
||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M439.55 236.05 244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81"/></svg>
|
||
</div>
|
||
<div class="md-source__repository">
|
||
haiwen/seafile-admin-docs
|
||
</div>
|
||
</a>
|
||
</div>
|
||
|
||
</nav>
|
||
|
||
</header>
|
||
|
||
<div class="md-container" data-md-component="container">
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<main class="md-main" data-md-component="main">
|
||
<div class="md-main__inner md-grid">
|
||
|
||
|
||
|
||
<div class="md-sidebar md-sidebar--primary" data-md-component="sidebar" data-md-type="navigation" >
|
||
<div class="md-sidebar__scrollwrap">
|
||
<div class="md-sidebar__inner">
|
||
|
||
|
||
|
||
|
||
<nav class="md-nav md-nav--primary" aria-label="Navigation" data-md-level="0">
|
||
<label class="md-nav__title" for="__drawer">
|
||
<a href="../.." title="Seafile Admin Manual" class="md-nav__button md-logo" aria-label="Seafile Admin Manual" data-md-component="logo">
|
||
|
||
<img src="../../media/seafile-transparent-1024.png" alt="logo">
|
||
|
||
</a>
|
||
Seafile Admin Manual
|
||
</label>
|
||
|
||
<div class="md-nav__source">
|
||
<a href="https://github.com/haiwen/seafile-admin-docs/" title="Go to repository" class="md-source" data-md-component="source">
|
||
<div class="md-source__icon md-icon">
|
||
|
||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M439.55 236.05 244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81"/></svg>
|
||
</div>
|
||
<div class="md-source__repository">
|
||
haiwen/seafile-admin-docs
|
||
</div>
|
||
</a>
|
||
</div>
|
||
|
||
<ul class="md-nav__list" data-md-scrollfix>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item md-nav__item--nested">
|
||
|
||
|
||
|
||
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_1" >
|
||
|
||
|
||
<label class="md-nav__link" for="__nav_1" id="__nav_1_label" tabindex="0">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Overview
|
||
</span>
|
||
|
||
|
||
<span class="md-nav__icon md-icon"></span>
|
||
</label>
|
||
|
||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_1_label" aria-expanded="false">
|
||
<label class="md-nav__title" for="__nav_1">
|
||
<span class="md-nav__icon md-icon"></span>
|
||
Overview
|
||
</label>
|
||
<ul class="md-nav__list" data-md-scrollfix>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../overview/components/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Seafile Components
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../overview/file_permission_management/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
File permission management
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../roadmap/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Roadmap
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../contribution/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Contribution
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../changelog/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Changelog
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
</ul>
|
||
</nav>
|
||
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item md-nav__item--nested">
|
||
|
||
|
||
|
||
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2" >
|
||
|
||
|
||
<label class="md-nav__link" for="__nav_2" id="__nav_2_label" tabindex="0">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Seafile Community Setup on Linux
|
||
</span>
|
||
|
||
|
||
<span class="md-nav__icon md-icon"></span>
|
||
</label>
|
||
|
||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="false">
|
||
<label class="md-nav__title" for="__nav_2">
|
||
<span class="md-nav__icon md-icon"></span>
|
||
Seafile Community Setup on Linux
|
||
</label>
|
||
<ul class="md-nav__list" data-md-scrollfix>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Outline
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy/using_mysql/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Installation with MySQL
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy/https_with_nginx/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
HTTPS with Nginx
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy/https_with_apache/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
HTTPS with Apache
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
</ul>
|
||
</nav>
|
||
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item md-nav__item--nested">
|
||
|
||
|
||
|
||
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3" >
|
||
|
||
|
||
<label class="md-nav__link" for="__nav_3" id="__nav_3_label" tabindex="0">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Seafile Professional Setup on Linux
|
||
</span>
|
||
|
||
|
||
<span class="md-nav__icon md-icon"></span>
|
||
</label>
|
||
|
||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_3_label" aria-expanded="false">
|
||
<label class="md-nav__title" for="__nav_3">
|
||
<span class="md-nav__icon md-icon"></span>
|
||
Seafile Professional Setup on Linux
|
||
</label>
|
||
<ul class="md-nav__list" data-md-scrollfix>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy_pro/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Outline
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy_pro/download_and_setup_seafile_professional_server/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Installation
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy_pro/migrate_from_seafile_community_server/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Migration from Seafile Community
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item md-nav__item--nested">
|
||
|
||
|
||
|
||
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3_4" >
|
||
|
||
|
||
<label class="md-nav__link" for="__nav_3_4" id="__nav_3_4_label" tabindex="0">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Storage Backends
|
||
</span>
|
||
|
||
|
||
<span class="md-nav__icon md-icon"></span>
|
||
</label>
|
||
|
||
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_4_label" aria-expanded="false">
|
||
<label class="md-nav__title" for="__nav_3_4">
|
||
<span class="md-nav__icon md-icon"></span>
|
||
Storage Backends
|
||
</label>
|
||
<ul class="md-nav__list" data-md-scrollfix>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy_pro/setup_with_amazon_s3/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Amazon S3 Backend
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy_pro/setup_with_ceph/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Ceph Backend
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy_pro/setup_with_swift/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
OpenStack Swift Backend
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy_pro/setup_with_oss/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Alibaba OSS
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy_pro/multiple_storage_backends/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Multiple Storage Backends
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy_pro/migrate/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Data migration
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
</ul>
|
||
</nav>
|
||
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item md-nav__item--nested">
|
||
|
||
|
||
|
||
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3_5" >
|
||
|
||
|
||
<label class="md-nav__link" for="__nav_3_5" id="__nav_3_5_label" tabindex="0">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Cluster Deployment
|
||
</span>
|
||
|
||
|
||
<span class="md-nav__icon md-icon"></span>
|
||
</label>
|
||
|
||
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_5_label" aria-expanded="false">
|
||
<label class="md-nav__title" for="__nav_3_5">
|
||
<span class="md-nav__icon md-icon"></span>
|
||
Cluster Deployment
|
||
</label>
|
||
<ul class="md-nav__list" data-md-scrollfix>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy_pro/deploy_in_a_cluster/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Deploy in a cluster
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy_pro/enable_search_and_background_tasks_in_a_cluster/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Search and background tasks in a cluster
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy_pro/memcached_mariadb_cluster/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Memcache and MariaDB Cluster
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy_pro/setup_seafile_cluster_with_nfs/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Setup Seafile cluster with NFS
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
</ul>
|
||
</nav>
|
||
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy_pro/seafile_professional_sdition_software_license_agreement/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
License
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
</ul>
|
||
</nav>
|
||
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item md-nav__item--nested">
|
||
|
||
|
||
|
||
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_4" >
|
||
|
||
|
||
<label class="md-nav__link" for="__nav_4" id="__nav_4_label" tabindex="0">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Seafile Setup with Docker
|
||
</span>
|
||
|
||
|
||
<span class="md-nav__icon md-icon"></span>
|
||
</label>
|
||
|
||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_4_label" aria-expanded="false">
|
||
<label class="md-nav__title" for="__nav_4">
|
||
<span class="md-nav__icon md-icon"></span>
|
||
Seafile Setup with Docker
|
||
</label>
|
||
<ul class="md-nav__list" data-md-scrollfix>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../docker/deploy_seafile_with_docker/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Seafile Community Installation
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../docker/pro-edition/deploy_seafile_pro_with_docker/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Seafile Professional Installation
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../docker/cluster/deploy_seafile_cluster_with_docker/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Seafile Docker Cluster Deployment
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy/deploy_with_k8s/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Setup with Kubernetes (K8s)
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../docker/pro-edition/migrate_ce_to_pro_with_docker/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Migration from Seafile Community
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../docker/non_docker_to_docker/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Migrate from non-docker deployment
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../docker/seafile_docker_autostart/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Seafile Docker autostart
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
</ul>
|
||
</nav>
|
||
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item md-nav__item--nested">
|
||
|
||
|
||
|
||
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5" >
|
||
|
||
|
||
<label class="md-nav__link" for="__nav_5" id="__nav_5_label" tabindex="0">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Advanced Setup Options
|
||
</span>
|
||
|
||
|
||
<span class="md-nav__icon md-icon"></span>
|
||
</label>
|
||
|
||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_5_label" aria-expanded="false">
|
||
<label class="md-nav__title" for="__nav_5">
|
||
<span class="md-nav__icon md-icon"></span>
|
||
Advanced Setup Options
|
||
</label>
|
||
<ul class="md-nav__list" data-md-scrollfix>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item md-nav__item--nested">
|
||
|
||
|
||
|
||
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5_1" >
|
||
|
||
|
||
<label class="md-nav__link" for="__nav_5_1" id="__nav_5_1_label" tabindex="0">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
LDAP/AD Integration
|
||
</span>
|
||
|
||
|
||
<span class="md-nav__icon md-icon"></span>
|
||
</label>
|
||
|
||
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_5_1_label" aria-expanded="false">
|
||
<label class="md-nav__title" for="__nav_5_1">
|
||
<span class="md-nav__icon md-icon"></span>
|
||
LDAP/AD Integration
|
||
</label>
|
||
<ul class="md-nav__list" data-md-scrollfix>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy/using_ldap/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
LDAP Integration
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy_pro/using_ldap_pro/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
LDAP Configuration for Seafile Pro
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy_pro/ldap_group_sync/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Importing Groups from LDAP (Pro)
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy_pro/ldap_role_sync/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Importing Roles from LDAP (Pro)
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy/ldap_in_11.0/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
LDAP in version 11.0
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy_pro/ldap_in_11.0/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
LDAP in version 11.0 (Pro)
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
</ul>
|
||
</nav>
|
||
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item md-nav__item--nested">
|
||
|
||
|
||
|
||
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5_2" >
|
||
|
||
|
||
<label class="md-nav__link" for="__nav_5_2" id="__nav_5_2_label" tabindex="0">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Single Sign On
|
||
</span>
|
||
|
||
|
||
<span class="md-nav__icon md-icon"></span>
|
||
</label>
|
||
|
||
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_5_2_label" aria-expanded="false">
|
||
<label class="md-nav__title" for="__nav_5_2">
|
||
<span class="md-nav__icon md-icon"></span>
|
||
Single Sign On
|
||
</label>
|
||
<ul class="md-nav__list" data-md-scrollfix>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy/single_sign_on/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Outline
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy/oauth/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
OAuth Authentication
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy/remote_user/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Remote User Authentication
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy/shibboleth_authentication/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Shibboleth Authentication
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy/auto_login_seadrive/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Auto Login to SeaDrive on Windows
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy_pro/saml2_in_10.0/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
SAML 2.0 in version 10.0+ (Pro)
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy_pro/adfs/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
SAML 2.0 (old) (Pro)
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy_pro/cas/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
CAS Authentication (Pro)
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy/auth_switch/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Switch authentication
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
</ul>
|
||
</nav>
|
||
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item md-nav__item--nested">
|
||
|
||
|
||
|
||
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5_3" >
|
||
|
||
|
||
<label class="md-nav__link" for="__nav_5_3" id="__nav_5_3_label" tabindex="0">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Online Office
|
||
</span>
|
||
|
||
|
||
<span class="md-nav__icon md-icon"></span>
|
||
</label>
|
||
|
||
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_5_3_label" aria-expanded="false">
|
||
<label class="md-nav__title" for="__nav_5_3">
|
||
<span class="md-nav__icon md-icon"></span>
|
||
Online Office
|
||
</label>
|
||
<ul class="md-nav__list" data-md-scrollfix>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy/libreoffice_online/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
LibreOffice Online Integration
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy/only_office/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
OnlyOffice Integration
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy_pro/office_web_app/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Office Online Server Integration (Pro)
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
</ul>
|
||
</nav>
|
||
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../extra_setup/setup_seadoc/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
SeaDoc Integration
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy/notification-server/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Notification Server
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../extension/webdav/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
WebDAV extension
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../extension/fuse/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
FUSE extension
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item md-nav__item--nested">
|
||
|
||
|
||
|
||
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5_8" >
|
||
|
||
|
||
<label class="md-nav__link" for="__nav_5_8" id="__nav_5_8_label" tabindex="0">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Virus Scan (Pro)
|
||
</span>
|
||
|
||
|
||
<span class="md-nav__icon md-icon"></span>
|
||
</label>
|
||
|
||
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_5_8_label" aria-expanded="false">
|
||
<label class="md-nav__title" for="__nav_5_8">
|
||
<span class="md-nav__icon md-icon"></span>
|
||
Virus Scan (Pro)
|
||
</label>
|
||
<ul class="md-nav__list" data-md-scrollfix>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy_pro/virus_scan/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Outline
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy_pro/deploy_clamav_with_seafile/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Deploy ClamAV with Seafile
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy_pro/virus_scan_with_kav4fs/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Virus Scan With Kav4fs
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
</ul>
|
||
</nav>
|
||
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item md-nav__item--nested">
|
||
|
||
|
||
|
||
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5_9" >
|
||
|
||
|
||
<label class="md-nav__link" for="__nav_5_9" id="__nav_5_9_label" tabindex="0">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Advanced User Management (Pro)
|
||
</span>
|
||
|
||
|
||
<span class="md-nav__icon md-icon"></span>
|
||
</label>
|
||
|
||
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_5_9_label" aria-expanded="false">
|
||
<label class="md-nav__title" for="__nav_5_9">
|
||
<span class="md-nav__icon md-icon"></span>
|
||
Advanced User Management (Pro)
|
||
</label>
|
||
<ul class="md-nav__list" data-md-scrollfix>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy_pro/multi_institutions/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Multi-Institutions Support
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy_pro/roles_permissions/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Roles and Permissions
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy_pro/admin_roles_permissions/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Administrator Roles and Permissions
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy_pro/multi_tenancy/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Multi-Tenancy Support
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
</ul>
|
||
</nav>
|
||
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy_pro/details_about_file_search/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Advanced File Search configuration (Pro)
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy/migrate_from_sqlite_to_mysql/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Migrate From SQLite to MySQL
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item md-nav__item--nested">
|
||
|
||
|
||
|
||
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5_12" >
|
||
|
||
|
||
<label class="md-nav__link" for="__nav_5_12" id="__nav_5_12_label" tabindex="0">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Others Deployment Notes
|
||
</span>
|
||
|
||
|
||
<span class="md-nav__icon md-icon"></span>
|
||
</label>
|
||
|
||
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_5_12_label" aria-expanded="false">
|
||
<label class="md-nav__title" for="__nav_5_12">
|
||
<span class="md-nav__icon md-icon"></span>
|
||
Others Deployment Notes
|
||
</label>
|
||
<ul class="md-nav__list" data-md-scrollfix>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy/start_seafile_at_system_bootup/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Start Seafile at System Bootup
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy/using_logrotate/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Logrotate
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy/ocm/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Open Cloud Mesh
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy/deploy_seafile_behind_nat/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Deploy Seafile behind NAT
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy/deploy_seahub_at_non-root_domain/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Deploy Seahub at Non-root domain or on custom port
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../security/fail2ban/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Config fail2ban
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy_pro/real_time_backup/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Real-time Backup Server
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
</ul>
|
||
</nav>
|
||
|
||
</li>
|
||
|
||
|
||
|
||
|
||
</ul>
|
||
</nav>
|
||
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item md-nav__item--active md-nav__item--nested">
|
||
|
||
|
||
|
||
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6" checked>
|
||
|
||
|
||
<label class="md-nav__link" for="__nav_6" id="__nav_6_label" tabindex="0">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Configuration and Customization
|
||
</span>
|
||
|
||
|
||
<span class="md-nav__icon md-icon"></span>
|
||
</label>
|
||
|
||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_6_label" aria-expanded="true">
|
||
<label class="md-nav__title" for="__nav_6">
|
||
<span class="md-nav__icon md-icon"></span>
|
||
Configuration and Customization
|
||
</label>
|
||
<ul class="md-nav__list" data-md-scrollfix>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Outline
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../ccnet-conf/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
ccnet.conf
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item md-nav__item--active">
|
||
|
||
<input class="md-nav__toggle md-toggle" type="checkbox" id="__toc">
|
||
|
||
|
||
|
||
|
||
|
||
<label class="md-nav__link md-nav__link--active" for="__toc">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
seafile.conf
|
||
</span>
|
||
|
||
|
||
<span class="md-nav__icon md-icon"></span>
|
||
</label>
|
||
|
||
<a href="./" class="md-nav__link md-nav__link--active">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
seafile.conf
|
||
</span>
|
||
|
||
|
||
</a>
|
||
|
||
|
||
|
||
<nav class="md-nav md-nav--secondary" aria-label="Table of contents">
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<label class="md-nav__title" for="__toc">
|
||
<span class="md-nav__icon md-icon"></span>
|
||
Table of contents
|
||
</label>
|
||
<ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
|
||
|
||
<li class="md-nav__item">
|
||
<a href="#storage-quota-setting" class="md-nav__link">
|
||
<span class="md-ellipsis">
|
||
Storage Quota Setting
|
||
</span>
|
||
</a>
|
||
|
||
</li>
|
||
|
||
<li class="md-nav__item">
|
||
<a href="#default-history-length-limit" class="md-nav__link">
|
||
<span class="md-ellipsis">
|
||
Default history length limit
|
||
</span>
|
||
</a>
|
||
|
||
</li>
|
||
|
||
<li class="md-nav__item">
|
||
<a href="#default-trash-expiration-time" class="md-nav__link">
|
||
<span class="md-ellipsis">
|
||
Default trash expiration time
|
||
</span>
|
||
</a>
|
||
|
||
</li>
|
||
|
||
<li class="md-nav__item">
|
||
<a href="#system-trash" class="md-nav__link">
|
||
<span class="md-ellipsis">
|
||
System Trash
|
||
</span>
|
||
</a>
|
||
|
||
</li>
|
||
|
||
<li class="md-nav__item">
|
||
<a href="#cache-pro-edition-only" class="md-nav__link">
|
||
<span class="md-ellipsis">
|
||
Cache (Pro Edition Only)
|
||
</span>
|
||
</a>
|
||
|
||
</li>
|
||
|
||
<li class="md-nav__item">
|
||
<a href="#seafile-fileserver-configuration" class="md-nav__link">
|
||
<span class="md-ellipsis">
|
||
Seafile fileserver configuration
|
||
</span>
|
||
</a>
|
||
|
||
</li>
|
||
|
||
<li class="md-nav__item">
|
||
<a href="#database-configuration" class="md-nav__link">
|
||
<span class="md-ellipsis">
|
||
Database configuration
|
||
</span>
|
||
</a>
|
||
|
||
</li>
|
||
|
||
<li class="md-nav__item">
|
||
<a href="#file-locking-pro-edition-only" class="md-nav__link">
|
||
<span class="md-ellipsis">
|
||
File Locking (Pro edition only)
|
||
</span>
|
||
</a>
|
||
|
||
</li>
|
||
|
||
<li class="md-nav__item">
|
||
<a href="#storage-backends" class="md-nav__link">
|
||
<span class="md-ellipsis">
|
||
Storage Backends
|
||
</span>
|
||
</a>
|
||
|
||
</li>
|
||
|
||
<li class="md-nav__item">
|
||
<a href="#cluster" class="md-nav__link">
|
||
<span class="md-ellipsis">
|
||
Cluster
|
||
</span>
|
||
</a>
|
||
|
||
</li>
|
||
|
||
<li class="md-nav__item">
|
||
<a href="#enable-slow-log" class="md-nav__link">
|
||
<span class="md-ellipsis">
|
||
Enable Slow Log
|
||
</span>
|
||
</a>
|
||
|
||
</li>
|
||
|
||
<li class="md-nav__item">
|
||
<a href="#enable-access-log" class="md-nav__link">
|
||
<span class="md-ellipsis">
|
||
Enable Access Log
|
||
</span>
|
||
</a>
|
||
|
||
</li>
|
||
|
||
<li class="md-nav__item">
|
||
<a href="#go-fileserver" class="md-nav__link">
|
||
<span class="md-ellipsis">
|
||
Go Fileserver
|
||
</span>
|
||
</a>
|
||
|
||
</li>
|
||
|
||
<li class="md-nav__item">
|
||
<a href="#profiling-go-fileserver-performance" class="md-nav__link">
|
||
<span class="md-ellipsis">
|
||
Profiling Go Fileserver Performance
|
||
</span>
|
||
</a>
|
||
|
||
</li>
|
||
|
||
<li class="md-nav__item">
|
||
<a href="#notification-server-configuration" class="md-nav__link">
|
||
<span class="md-ellipsis">
|
||
Notification server configuration
|
||
</span>
|
||
</a>
|
||
|
||
</li>
|
||
|
||
</ul>
|
||
|
||
</nav>
|
||
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../seahub_settings_py/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
seahub_settings.py
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../seafevents-conf/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
seafevents.conf
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../seahub_customization/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Seahub customization
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../sending_email/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Email Sending
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
</ul>
|
||
</nav>
|
||
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item md-nav__item--nested">
|
||
|
||
|
||
|
||
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_7" >
|
||
|
||
|
||
<label class="md-nav__link" for="__nav_7" id="__nav_7_label" tabindex="0">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Administration
|
||
</span>
|
||
|
||
|
||
<span class="md-nav__icon md-icon"></span>
|
||
</label>
|
||
|
||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_7_label" aria-expanded="false">
|
||
<label class="md-nav__title" for="__nav_7">
|
||
<span class="md-nav__icon md-icon"></span>
|
||
Administration
|
||
</label>
|
||
<ul class="md-nav__list" data-md-scrollfix>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../maintain/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Outline
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../maintain/account/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Account management
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../maintain/two_factor_authentication/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Two-factor Authentication
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../security/security_features/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Security features
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../security/auditing/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Access logs and auditing
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../maintain/export_report/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Export report
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../maintain/logs/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Logs
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../maintain/backup_recovery/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Backup and Recovery
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../maintain/seafile_fsck/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Seafile FSCK
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../maintain/seafile_gc/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Seafile GC
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../maintain/clean_database/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Clean database
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../deploy_pro/seaf_import/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Import Directory To Seafile (Pro)
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
</ul>
|
||
</nav>
|
||
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item md-nav__item--nested">
|
||
|
||
|
||
|
||
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_8" >
|
||
|
||
|
||
<label class="md-nav__link" for="__nav_8" id="__nav_8_label" tabindex="0">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Upgrade Seafile Server
|
||
</span>
|
||
|
||
|
||
<span class="md-nav__icon md-icon"></span>
|
||
</label>
|
||
|
||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_8_label" aria-expanded="false">
|
||
<label class="md-nav__title" for="__nav_8">
|
||
<span class="md-nav__icon md-icon"></span>
|
||
Upgrade Seafile Server
|
||
</label>
|
||
<ul class="md-nav__list" data-md-scrollfix>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../upgrade/upgrade/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Outline
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../upgrade/upgrade_docker/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Upgrade Seafile Docker
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../upgrade/upgrade_a_cluster/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Upgrade Seafile Cluster
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../upgrade/upgrade_a_cluster_docker/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Upgrade Seafile Cluster (Docker)
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../upgrade/upgrade_notes_for_7.0.x/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Upgrade notes for 7.0.x
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../upgrade/upgrade_notes_for_7.1.x/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Upgrade notes for 7.1.x
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../upgrade/upgrade_notes_for_8.0.x/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Upgrade notes for 8.0.x
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../upgrade/upgrade_notes_for_9.0.x/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Upgrade notes for 9.0.x
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../upgrade/upgrade_notes_for_10.0.x/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Upgrade notes for 10.0.x
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../upgrade/upgrade_notes_for_11.0.x/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Upgrade notes for 11.0.x
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../upgrade/upgrade_notes_for_12.0.x/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Upgrade notes for 12.0.x (In progress)
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
</ul>
|
||
</nav>
|
||
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item md-nav__item--nested">
|
||
|
||
|
||
|
||
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_9" >
|
||
|
||
|
||
<label class="md-nav__link" for="__nav_9" id="__nav_9_label" tabindex="0">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Developing
|
||
</span>
|
||
|
||
|
||
<span class="md-nav__icon md-icon"></span>
|
||
</label>
|
||
|
||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_9_label" aria-expanded="false">
|
||
<label class="md-nav__title" for="__nav_9">
|
||
<span class="md-nav__icon md-icon"></span>
|
||
Developing
|
||
</label>
|
||
<ul class="md-nav__list" data-md-scrollfix>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../develop/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Outline
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item md-nav__item--nested">
|
||
|
||
|
||
|
||
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_9_2" >
|
||
|
||
|
||
<label class="md-nav__link" for="__nav_9_2" id="__nav_9_2_label" tabindex="0">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
How to Build Seafile
|
||
</span>
|
||
|
||
|
||
<span class="md-nav__icon md-icon"></span>
|
||
</label>
|
||
|
||
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_9_2_label" aria-expanded="false">
|
||
<label class="md-nav__title" for="__nav_9_2">
|
||
<span class="md-nav__icon md-icon"></span>
|
||
How to Build Seafile
|
||
</label>
|
||
<ul class="md-nav__list" data-md-scrollfix>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../build_seafile/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Outline
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../build_seafile/linux/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Linux
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../build_seafile/osx/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
macOS
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../build_seafile/windows/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Windows
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../build_seafile/server/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Server development
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../build_seafile/rpi/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Server binary package
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
</ul>
|
||
</nav>
|
||
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../develop/translation/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Translation
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../develop/web_api_v2.1/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Web API V2.1
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="https://github.com/rene-s/Seafile-PHP-SDK" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
PHP API
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../develop/data_model/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Data Model
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
</ul>
|
||
</nav>
|
||
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item md-nav__item--nested">
|
||
|
||
|
||
|
||
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_10" >
|
||
|
||
|
||
<label class="md-nav__link" for="__nav_10" id="__nav_10_label" tabindex="0">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
ChangeLog
|
||
</span>
|
||
|
||
|
||
<span class="md-nav__icon md-icon"></span>
|
||
</label>
|
||
|
||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_10_label" aria-expanded="false">
|
||
<label class="md-nav__title" for="__nav_10">
|
||
<span class="md-nav__icon md-icon"></span>
|
||
ChangeLog
|
||
</label>
|
||
<ul class="md-nav__list" data-md-scrollfix>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../changelog/server-changelog/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Seafile Community Edition
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../changelog/changelog-for-seafile-professional-server/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Seafile Professional Edition
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../changelog/client-changelog/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Seafile Client
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="md-nav__item">
|
||
<a href="../../changelog/drive-client-changelog/" class="md-nav__link">
|
||
|
||
|
||
<span class="md-ellipsis">
|
||
Drive Client
|
||
</span>
|
||
|
||
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
</ul>
|
||
</nav>
|
||
|
||
</li>
|
||
|
||
|
||
|
||
</ul>
|
||
</nav>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
|
||
<div class="md-sidebar md-sidebar--secondary" data-md-component="sidebar" data-md-type="toc" >
|
||
<div class="md-sidebar__scrollwrap">
|
||
<div class="md-sidebar__inner">
|
||
|
||
|
||
<nav class="md-nav md-nav--secondary" aria-label="Table of contents">
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<label class="md-nav__title" for="__toc">
|
||
<span class="md-nav__icon md-icon"></span>
|
||
Table of contents
|
||
</label>
|
||
<ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
|
||
|
||
<li class="md-nav__item">
|
||
<a href="#storage-quota-setting" class="md-nav__link">
|
||
<span class="md-ellipsis">
|
||
Storage Quota Setting
|
||
</span>
|
||
</a>
|
||
|
||
</li>
|
||
|
||
<li class="md-nav__item">
|
||
<a href="#default-history-length-limit" class="md-nav__link">
|
||
<span class="md-ellipsis">
|
||
Default history length limit
|
||
</span>
|
||
</a>
|
||
|
||
</li>
|
||
|
||
<li class="md-nav__item">
|
||
<a href="#default-trash-expiration-time" class="md-nav__link">
|
||
<span class="md-ellipsis">
|
||
Default trash expiration time
|
||
</span>
|
||
</a>
|
||
|
||
</li>
|
||
|
||
<li class="md-nav__item">
|
||
<a href="#system-trash" class="md-nav__link">
|
||
<span class="md-ellipsis">
|
||
System Trash
|
||
</span>
|
||
</a>
|
||
|
||
</li>
|
||
|
||
<li class="md-nav__item">
|
||
<a href="#cache-pro-edition-only" class="md-nav__link">
|
||
<span class="md-ellipsis">
|
||
Cache (Pro Edition Only)
|
||
</span>
|
||
</a>
|
||
|
||
</li>
|
||
|
||
<li class="md-nav__item">
|
||
<a href="#seafile-fileserver-configuration" class="md-nav__link">
|
||
<span class="md-ellipsis">
|
||
Seafile fileserver configuration
|
||
</span>
|
||
</a>
|
||
|
||
</li>
|
||
|
||
<li class="md-nav__item">
|
||
<a href="#database-configuration" class="md-nav__link">
|
||
<span class="md-ellipsis">
|
||
Database configuration
|
||
</span>
|
||
</a>
|
||
|
||
</li>
|
||
|
||
<li class="md-nav__item">
|
||
<a href="#file-locking-pro-edition-only" class="md-nav__link">
|
||
<span class="md-ellipsis">
|
||
File Locking (Pro edition only)
|
||
</span>
|
||
</a>
|
||
|
||
</li>
|
||
|
||
<li class="md-nav__item">
|
||
<a href="#storage-backends" class="md-nav__link">
|
||
<span class="md-ellipsis">
|
||
Storage Backends
|
||
</span>
|
||
</a>
|
||
|
||
</li>
|
||
|
||
<li class="md-nav__item">
|
||
<a href="#cluster" class="md-nav__link">
|
||
<span class="md-ellipsis">
|
||
Cluster
|
||
</span>
|
||
</a>
|
||
|
||
</li>
|
||
|
||
<li class="md-nav__item">
|
||
<a href="#enable-slow-log" class="md-nav__link">
|
||
<span class="md-ellipsis">
|
||
Enable Slow Log
|
||
</span>
|
||
</a>
|
||
|
||
</li>
|
||
|
||
<li class="md-nav__item">
|
||
<a href="#enable-access-log" class="md-nav__link">
|
||
<span class="md-ellipsis">
|
||
Enable Access Log
|
||
</span>
|
||
</a>
|
||
|
||
</li>
|
||
|
||
<li class="md-nav__item">
|
||
<a href="#go-fileserver" class="md-nav__link">
|
||
<span class="md-ellipsis">
|
||
Go Fileserver
|
||
</span>
|
||
</a>
|
||
|
||
</li>
|
||
|
||
<li class="md-nav__item">
|
||
<a href="#profiling-go-fileserver-performance" class="md-nav__link">
|
||
<span class="md-ellipsis">
|
||
Profiling Go Fileserver Performance
|
||
</span>
|
||
</a>
|
||
|
||
</li>
|
||
|
||
<li class="md-nav__item">
|
||
<a href="#notification-server-configuration" class="md-nav__link">
|
||
<span class="md-ellipsis">
|
||
Notification server configuration
|
||
</span>
|
||
</a>
|
||
|
||
</li>
|
||
|
||
</ul>
|
||
|
||
</nav>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
|
||
<div class="md-content" data-md-component="content">
|
||
<article class="md-content__inner md-typeset">
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<h1 id="seafileconf-settings">Seafile.conf settings<a class="headerlink" href="#seafileconf-settings" title="Permanent link">¶</a></h1>
|
||
<p><strong>Important</strong>: Every entry in this configuration file is <strong>case-sensitive</strong>.</p>
|
||
<p>You need to restart seafile and seahub so that your changes take effect.</p>
|
||
<div class="codehilite"><pre><span></span><code>./seahub.sh restart
|
||
./seafile.sh restart
|
||
</code></pre></div>
|
||
|
||
<h2 id="storage-quota-setting">Storage Quota Setting<a class="headerlink" href="#storage-quota-setting" title="Permanent link">¶</a></h2>
|
||
<p>You may set a default quota (e.g. 2GB) for all users. To do this, just add the following lines to <code>seafile.conf</code> file</p>
|
||
<div class="codehilite"><pre><span></span><code><span class="k">[quota]</span>
|
||
<span class="c1"># default user quota in GB, integer only</span>
|
||
<span class="na">default</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">2</span>
|
||
</code></pre></div>
|
||
|
||
<p>This setting applies to all users. If you want to set quota for a specific user, you may log in to seahub website as administrator, then set it in "System Admin" page.</p>
|
||
<p>Since Pro 10.0.9 version, you can set the maximum number of files allowed in a library, and when this limit is exceeded, files cannot be uploaded to this library. There is no limit by default.</p>
|
||
<div class="codehilite"><pre><span></span><code><span class="k">[quota]</span>
|
||
<span class="na">library_file_limit</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">100000</span>
|
||
</code></pre></div>
|
||
|
||
<h2 id="default-history-length-limit">Default history length limit<a class="headerlink" href="#default-history-length-limit" title="Permanent link">¶</a></h2>
|
||
<p>If you don't want to keep all file revision history, you may set a default history length limit for all libraries.</p>
|
||
<div class="codehilite"><pre><span></span><code><span class="k">[history]</span>
|
||
<span class="na">keep_days</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">days of history to keep</span>
|
||
</code></pre></div>
|
||
|
||
<h2 id="default-trash-expiration-time">Default trash expiration time<a class="headerlink" href="#default-trash-expiration-time" title="Permanent link">¶</a></h2>
|
||
<p>The default time for automatic cleanup of the libraries trash is 30 days.You can modify this time by adding the following configuration:</p>
|
||
<div class="codehilite"><pre><span></span><code><span class="k">[library_trash]</span>
|
||
<span class="na">expire_days</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">60</span>
|
||
</code></pre></div>
|
||
|
||
<h2 id="system-trash">System Trash<a class="headerlink" href="#system-trash" title="Permanent link">¶</a></h2>
|
||
<p>Seafile uses a system trash, where deleted libraries will be moved to. In this way, accidentally deleted libraries can be recovered by system admin.</p>
|
||
<h2 id="cache-pro-edition-only">Cache (Pro Edition Only)<a class="headerlink" href="#cache-pro-edition-only" title="Permanent link">¶</a></h2>
|
||
<p>Seafile Pro Edition uses memory caches in various cases to improve performance. Some session information is also saved into memory cache to be shared among the cluster nodes. Memcached or Reids can be use for memory cache.</p>
|
||
<p>If you use memcached:</p>
|
||
<div class="codehilite"><pre><span></span><code><span class="k">[memcached]</span>
|
||
<span class="c1"># Replace `localhost` with the memcached address:port if you're using remote memcached</span>
|
||
<span class="c1"># POOL-MIN and POOL-MAX is used to control connection pool size. Usually the default is good enough.</span>
|
||
<span class="na">memcached_options</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">--SERVER=localhost --POOL-MIN=10 --POOL-MAX=100</span>
|
||
</code></pre></div>
|
||
|
||
<p>If you use redis:</p>
|
||
<div class="codehilite"><pre><span></span><code><span class="k">[redis]</span>
|
||
<span class="c1"># your redis server address</span>
|
||
<span class="na">redis_host</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">127.0.0.1</span>
|
||
<span class="c1"># your redis server port</span>
|
||
<span class="na">redis_port</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">6379</span>
|
||
<span class="c1"># size of connection pool to redis, default is 100</span>
|
||
<span class="na">max_connections</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">100</span>
|
||
</code></pre></div>
|
||
|
||
<p>Redis support is added in version 11.0. Currently only single-node Redis is supported. Redis Sentinel or Cluster is not supported yet.</p>
|
||
<h2 id="seafile-fileserver-configuration">Seafile fileserver configuration<a class="headerlink" href="#seafile-fileserver-configuration" title="Permanent link">¶</a></h2>
|
||
<p>The configuration of seafile fileserver is in the <code>[fileserver]</code> section of the file <code>seafile.conf</code></p>
|
||
<div class="codehilite"><pre><span></span><code><span class="k">[fileserver]</span>
|
||
<span class="c1"># bind address for fileserver</span>
|
||
<span class="c1"># default to 0.0.0.0, if deployed without proxy: no access restriction</span>
|
||
<span class="c1"># set to 127.0.0.1, if used with local proxy: only access by local</span>
|
||
<span class="na">host</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">127.0.0.1</span>
|
||
<span class="c1"># tcp port for fileserver</span>
|
||
<span class="na">port</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">8082</span>
|
||
</code></pre></div>
|
||
|
||
<p>Since Community Edition 6.2 and Pro Edition 6.1.9, you can set the number of worker threads to server http requests. Default value is 10, which is a good value for most use cases.</p>
|
||
<div class="codehilite"><pre><span></span><code><span class="k">[fileserver]</span>
|
||
<span class="na">worker_threads</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">15</span>
|
||
</code></pre></div>
|
||
|
||
<p>Change upload/download settings.</p>
|
||
<div class="codehilite"><pre><span></span><code><span class="k">[fileserver]</span>
|
||
<span class="c1"># Set maximum upload file size to 200M.</span>
|
||
<span class="c1"># If not configured, there is no file size limit for uploading.</span>
|
||
<span class="na">max_upload_size</span><span class="o">=</span><span class="s">200</span>
|
||
|
||
<span class="c1"># Set maximum download directory size to 200M.</span>
|
||
<span class="c1"># Default is 100M.</span>
|
||
<span class="na">max_download_dir_size</span><span class="o">=</span><span class="s">200</span>
|
||
</code></pre></div>
|
||
|
||
<p>After a file is uploaded via the web interface, or the cloud file browser in the client, it needs to be divided into fixed size blocks and stored into storage backend. We call this procedure "indexing". By default, the file server uses 1 thread to sequentially index the file and store the blocks one by one. This is suitable for most cases. But if you're using S3/Ceph/Swift backends, you may have more bandwidth in the storage backend for storing multiple blocks in parallel. We provide an option to define the number of concurrent threads in indexing:</p>
|
||
<div class="codehilite"><pre><span></span><code><span class="k">[fileserver]</span>
|
||
<span class="na">max_indexing_threads</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">10</span>
|
||
</code></pre></div>
|
||
|
||
<p>When users upload files in the web interface (seahub), file server divides the file into fixed size blocks. Default blocks size for web uploaded files is 8MB. The block size can be set here.</p>
|
||
<div class="codehilite"><pre><span></span><code><span class="k">[fileserver]</span>
|
||
<span class="c1">#Set block size to 2MB</span>
|
||
<span class="na">fixed_block_size</span><span class="o">=</span><span class="s">2</span>
|
||
</code></pre></div>
|
||
|
||
<p>When users upload files in the web interface, file server assigns an token to authorize the upload operation. This token is valid for 1 hour by default. When uploading a large file via WAN, the upload time can be longer than 1 hour. You can change the token expire time to a larger value.</p>
|
||
<div class="codehilite"><pre><span></span><code><span class="k">[fileserver]</span>
|
||
<span class="c1">#Set uploading time limit to 3600s</span>
|
||
<span class="na">web_token_expire_time</span><span class="o">=</span><span class="s">3600</span>
|
||
</code></pre></div>
|
||
|
||
<p>You can download a folder as a zip archive from seahub, but some zip software
|
||
on windows doesn't support UTF-8, in which case you can use the "windows_encoding"
|
||
settings to solve it.</p>
|
||
<div class="codehilite"><pre><span></span><code><span class="k">[zip]</span>
|
||
<span class="c1"># The file name encoding of the downloaded zip file.</span>
|
||
<span class="na">windows_encoding</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">iso-8859-1</span>
|
||
</code></pre></div>
|
||
|
||
<p>The "httptemp" directory contains temporary files created during file upload and zip download. In some cases the temporary files are not cleaned up after the file transfer was interrupted. Starting from 7.1.5 version, file server will regularly scan the "httptemp" directory to remove files created long time ago.</p>
|
||
<div class="codehilite"><pre><span></span><code><span class="k">[fileserver]</span>
|
||
<span class="c1"># After how much time a temp file will be removed. The unit is in seconds. Default to 3 days.</span>
|
||
<span class="na">http_temp_file_ttl</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">x</span>
|
||
<span class="c1"># File scan interval. The unit is in seconds. Default to 1 hour.</span>
|
||
<span class="na">http_temp_scan_interval</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">x</span>
|
||
</code></pre></div>
|
||
|
||
<p>New in Seafile Pro 7.1.16 and Pro 8.0.3: You can set the maximum number of files contained in a library that can be synced by the Seafile client. The default is 100000. When you download a repo, Seafile client will request fs id list, and you can control the timeout period of this request through <code>fs_id_list_request_timeout</code> configuration, which defaults to 5 minutes. These two options are added to prevent long fs-id-list requests from overloading the server.</p>
|
||
<p>Since Pro 8.0.4 version, you can set both options to -1, to allow unlimited size and timeout.</p>
|
||
<div class="codehilite"><pre><span></span><code><span class="k">[fileserver]</span>
|
||
<span class="na">max_sync_file_count</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">100000</span>
|
||
<span class="na">fs_id_list_request_timeout</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">300</span>
|
||
</code></pre></div>
|
||
|
||
<p>If you use object storage as storage backend, when a large file is frequently downloaded, the same blocks need to be fetched from the storage backend to Seafile server. This may waste bandwith and cause high load on the internal network. Since Seafile Pro 8.0.5 version, we add block caching to improve the situation. Note that this configuration is only effective for downloading files through web page or API, but not for syncing files.</p>
|
||
<ul>
|
||
<li>To enable this feature, set <code>use_block_cache</code> option in the <code>[fileserver]</code> group. It's not enabled by default. </li>
|
||
<li>The <code>block_cache_size_limit</code> option is used to limit the size of the cache. Its default value is 10GB. The blocks are cached in <code>seafile-data/block-cache</code> directory. When the total size of cached files exceeds the limit, seaf-server will clean up older files until the size reduces to 70% of the limit. The cleanup interval is 5 minutes. You have to have a good estimate on how much space you need for the cache directory. Otherwise on frequent downloads this directory can be quickly filled up.</li>
|
||
<li>The <code>block_cache_file_types</code> configuration is used to choose the file types that are cached. <code>block_cache_file_types</code> the default value is mp4;mov.</li>
|
||
</ul>
|
||
<div class="codehilite"><pre><span></span><code><span class="k">[fileserver]</span>
|
||
<span class="na">use_block_cache</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">true</span>
|
||
<span class="c1"># Set block cache size limit to 100MB</span>
|
||
<span class="na">block_cache_size_limit</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">100</span>
|
||
<span class="na">block_cache_file_types</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">mp4</span><span class="c1">;mov</span>
|
||
</code></pre></div>
|
||
|
||
<p>When a large number of files are uploaded through the web page and API, it will be expensive to calculate block IDs based on the block contents. Since Seafile-pro-9.0.6, you can add the <code>skip_block_hash</code> option to use a random string as block ID. Note that this option will prevent fsck from checking block content integrity. You should specify <code>--shallow</code> option to fsck to not check content integrity.</p>
|
||
<div class="codehilite"><pre><span></span><code><span class="k">[fileserver]</span>
|
||
<span class="na">skip_block_hash</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">true</span>
|
||
</code></pre></div>
|
||
|
||
<p>If you want to limit the type of files when uploading files, since Seafile Pro 10.0.0 version, you can set <code>file_ext_white_list</code> option in the <code>[fileserver]</code> group. This option is a list of file types, only the file types in this list are allowed to be uploaded. It's not enabled by default. </p>
|
||
<div class="codehilite"><pre><span></span><code><span class="k">[fileserver]</span>
|
||
<span class="na">file_ext_white_list</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">md</span><span class="c1">;mp4;mov</span>
|
||
</code></pre></div>
|
||
|
||
<p>Since seafile 10.0.1, when you use go fileserver, you can set <code>upload_limit</code> and <code>download_limit</code> option in the <code>[fileserver]</code> group to limit the speed of file upload and download. It's not enabled by default. </p>
|
||
<div class="codehilite"><pre><span></span><code><span class="k">[fileserver]</span>
|
||
<span class="c1"># The unit is in KB/s.</span>
|
||
<span class="na">upload_limit</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">100</span>
|
||
<span class="na">download_limit</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">100</span>
|
||
</code></pre></div>
|
||
|
||
<p>Since Seafile 11.0.7 Pro, you can ask file server to check virus for every file uploaded with web APIs. Find more options about virus scanning at <a href="../../deploy_pro/virus_scan/">virus scan</a>.</p>
|
||
<div class="codehilite"><pre><span></span><code><span class="k">[fileserver]</span>
|
||
<span class="c1"># default is false</span>
|
||
<span class="na">check_virus_on_web_upload</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">true</span>
|
||
</code></pre></div>
|
||
|
||
<h2 id="database-configuration">Database configuration<a class="headerlink" href="#database-configuration" title="Permanent link">¶</a></h2>
|
||
<p>The whole database configuration is stored in the <code>[database]</code> section of the configuration file, whether you use SQLite or MySQL.</p>
|
||
<div class="codehilite"><pre><span></span><code><span class="k">[database]</span>
|
||
<span class="na">type</span><span class="o">=</span><span class="s">mysql</span>
|
||
<span class="na">host</span><span class="o">=</span><span class="s">127.0.0.1</span>
|
||
<span class="na">user</span><span class="o">=</span><span class="s">root</span>
|
||
<span class="na">password</span><span class="o">=</span><span class="s">root</span>
|
||
<span class="na">db_name</span><span class="o">=</span><span class="s">seafile_db</span>
|
||
<span class="na">connection_charset</span><span class="o">=</span><span class="s">utf8</span>
|
||
<span class="na">max_connections</span><span class="o">=</span><span class="s">100</span>
|
||
</code></pre></div>
|
||
|
||
<p>When you configure seafile server to use MySQL, the default connection pool size is 100, which should be enough for most use cases.</p>
|
||
<p>Since Seafile 10.0.2, you can enable the encrypted connections to the MySQL server by adding the following configuration options:</p>
|
||
<div class="codehilite"><pre><span></span><code><span class="k">[database]</span>
|
||
<span class="na">use_ssl</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">true</span>
|
||
<span class="na">skip_verify</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">false</span>
|
||
<span class="na">ca_path</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">/etc/mysql/ca.pem</span>
|
||
</code></pre></div>
|
||
|
||
<p>When set <code>use_ssl</code> to true and <code>skip_verify</code> to false, it will check whether the MySQL server certificate is legal through the CA configured in <code>ca_path</code>. The <code>ca_path</code> is a trusted CA certificate path for signing MySQL server certificates. When <code>skip_verify</code> is true, there is no need to add the <code>ca_path</code> option. The MySQL server certificate won't be verified at this time.</p>
|
||
<h2 id="file-locking-pro-edition-only">File Locking (Pro edition only)<a class="headerlink" href="#file-locking-pro-edition-only" title="Permanent link">¶</a></h2>
|
||
<p>The Seafile Pro server auto expires file locks after some time, to prevent a locked file being locked for too long. The expire time can be tune in seafile.conf file.</p>
|
||
<div class="codehilite"><pre><span></span><code><span class="k">[file_lock]</span>
|
||
<span class="na">default_expire_hours</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">6</span>
|
||
</code></pre></div>
|
||
|
||
<p>The default is 12 hours.</p>
|
||
<p>Since Seafile-pro-9.0.6, you can add cache for getting locked files (reduce server load caused by sync clients).</p>
|
||
<div class="codehilite"><pre><span></span><code><span class="k">[file_lock]</span>
|
||
<span class="na">use_locked_file_cache</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">true</span>
|
||
</code></pre></div>
|
||
|
||
<p>At the same time, you also need to configure the following memcache options for the cache to take effect:</p>
|
||
<div class="codehilite"><pre><span></span><code><span class="k">[memcached]</span>
|
||
<span class="na">memcached_options</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">--SERVER=<the IP of Memcached Server> --POOL-MIN=10 --POOL-MAX=100</span>
|
||
</code></pre></div>
|
||
|
||
<h2 id="storage-backends">Storage Backends<a class="headerlink" href="#storage-backends" title="Permanent link">¶</a></h2>
|
||
<p>You may configure Seafile to use various kinds of object storage backends.</p>
|
||
<ul>
|
||
<li><a href="../../deploy_pro/setup_with_amazon_s3/">S3 or S3-compatible object storage</a></li>
|
||
<li><a href="../../deploy_pro/setup_with_ceph/">Ceph RADOS</a></li>
|
||
<li><a href="../../deploy_pro/setup_with_oss/">Alibaba Cloud OSS</a></li>
|
||
<li><a href="../../deploy_pro/setup_with_swift/">OpenStack Swift</a></li>
|
||
</ul>
|
||
<p>You may also configure Seafile to use <a href="../../deploy_pro/multiple_storage_backends/">multiple storage backends</a> at the same time.</p>
|
||
<h2 id="cluster">Cluster<a class="headerlink" href="#cluster" title="Permanent link">¶</a></h2>
|
||
<p>When you deploy Seafile in a cluster, you should add the following configuration:</p>
|
||
<div class="codehilite"><pre><span></span><code><span class="k">[cluster]</span>
|
||
<span class="na">enabled</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">true</span>
|
||
</code></pre></div>
|
||
|
||
<h2 id="enable-slow-log">Enable Slow Log<a class="headerlink" href="#enable-slow-log" title="Permanent link">¶</a></h2>
|
||
<p>Since Seafile-pro-6.3.10, you can enable seaf-server's RPC slow log to do performance analysis.The slow log is enabled by default.</p>
|
||
<p>If you want to configure related options, add the options to seafile.conf:</p>
|
||
<div class="codehilite"><pre><span></span><code><span class="k">[slow_log]</span>
|
||
<span class="c1"># default to true</span>
|
||
<span class="na">enable_slow_log</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">true</span>
|
||
<span class="c1"># the unit of all slow log thresholds is millisecond.</span>
|
||
<span class="c1"># default to 5000 milliseconds, only RPC queries processed for longer than 5000 milliseconds will be logged.</span>
|
||
<span class="na">rpc_slow_threshold</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">5000</span>
|
||
</code></pre></div>
|
||
|
||
<p>You can find <code>seafile_slow_rpc.log</code> in <code>logs/slow_logs</code>. You can also use <a href="../../deploy/using_logrotate/">log-rotate</a> to rotate the log files. You just need to send <code>SIGUSR2</code> to <code>seaf-server</code> process. The slow log file will be closed and reopened.</p>
|
||
<p>Since 9.0.2 Pro, the signal to trigger log rotation has been changed to <code>SIGUSR1</code>. This signal will trigger rotation for all log files opened by seaf-server. You should change your log rotate settings accordingly.</p>
|
||
<h2 id="enable-access-log">Enable Access Log<a class="headerlink" href="#enable-access-log" title="Permanent link">¶</a></h2>
|
||
<p>Even though Nginx logs all requests with certain details, such as url, response code, upstream process time, it's sometimes desirable to have more context about the requests, such as the user id for each request. Such information can only be logged from file server itself. Since 9.0.2 Pro, access log feature is added to fileserver.</p>
|
||
<p>To enable access log, add below options to seafile.conf:</p>
|
||
<div class="codehilite"><pre><span></span><code><span class="k">[fileserver]</span>
|
||
<span class="c1"># default to false. If enabled, fileserver-access.log will be written to log directory.</span>
|
||
<span class="na">enable_access_log</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">true</span>
|
||
</code></pre></div>
|
||
|
||
<p>The log format is as following:</p>
|
||
<div class="codehilite"><pre><span></span><code>start time - user id - url - response code - process time
|
||
</code></pre></div>
|
||
|
||
<p>You can use <code>SIGUSR1</code> to trigger log rotation.</p>
|
||
<h2 id="go-fileserver">Go Fileserver<a class="headerlink" href="#go-fileserver" title="Permanent link">¶</a></h2>
|
||
<p>Seafile 9.0 introduces a new fileserver implemented in Go programming language. To enable it, you can set the options below in seafile.conf:</p>
|
||
<div class="codehilite"><pre><span></span><code><span class="k">[fileserver]</span>
|
||
<span class="na">use_go_fileserver</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">true</span>
|
||
</code></pre></div>
|
||
|
||
<p>Go fileserver has 3 advantages over the traditional fileserver implemented in C language:</p>
|
||
<ol>
|
||
<li>Better performance when syncing libraries with large number of files. With C fileserver, syncing large libraries may consume all the worker threads in the server and make the service slow. There is a config option <code>max_sync_file_count</code> to limit the size of library to be synced. The default is 100K. With Go fileserver you can set this option to a much higher number, such as 1 million.</li>
|
||
<li>Downloading zipped folders on the fly. And there is no limit on the size of the downloaded folder. With C fileserver, the server has to first create a zip file for the downloaded folder then send it to the client. With Go fileserver, the zip file can be created while transferring to the client. The option <code>max_download_dir_size</code> is thus no longer needed by Go fileserver.</li>
|
||
<li>Since version 10.0 you can also set upload/download rate limits.</li>
|
||
</ol>
|
||
<p>Go fileserver caches fs objects in memory. On the one hand, it avoids repeated creation and destruction of repeatedly accessed objects; on the other hand it will also slow down the speed at which objects are released, which will prevent go's gc mechanism from consuming too much CPU time. You can set the size of memory used by fs cache through the following options.</p>
|
||
<div class="codehilite"><pre><span></span><code><span class="k">[fileserver]</span>
|
||
<span class="c1"># The unit is in M. Default to 2G.</span>
|
||
<span class="na">fs_cache_limit</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">100</span>
|
||
</code></pre></div>
|
||
|
||
<h2 id="profiling-go-fileserver-performance">Profiling Go Fileserver Performance<a class="headerlink" href="#profiling-go-fileserver-performance" title="Permanent link">¶</a></h2>
|
||
<p>Since Seafile 9.0.7, you can enable the profile function of go fileserver by adding the following configuration options:</p>
|
||
<div class="codehilite"><pre><span></span><code><span class="err">#</span><span class="w"> </span><span class="n">profile_password</span><span class="w"> </span><span class="k">is</span><span class="w"> </span><span class="n">required</span><span class="p">,</span><span class="w"> </span><span class="n">change</span><span class="w"> </span><span class="n">it</span><span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="n">your</span><span class="w"> </span><span class="n">need</span>
|
||
<span class="o">[</span><span class="n">fileserver</span><span class="o">]</span>
|
||
<span class="n">enable_profiling</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="k">true</span>
|
||
<span class="n">profile_password</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">8</span><span class="n">kcUz1I2sLaywQhCRtn2x1</span>
|
||
</code></pre></div>
|
||
|
||
<p>This interface can be used through the pprof tool provided by Go language. See https://pkg.go.dev/net/http/pprof for details. Note that you have to first install Go on the client that issues the below commands. The password parameter should match the one you set in the configuration.</p>
|
||
<div class="codehilite"><pre><span></span><code><span class="n">go</span><span class="w"> </span><span class="k">tool</span><span class="w"> </span><span class="n">pprof</span><span class="w"> </span><span class="n">http</span><span class="p">:</span><span class="o">//</span><span class="n">localhost</span><span class="p">:</span><span class="mi">8082</span><span class="o">/</span><span class="n">debug</span><span class="o">/</span><span class="n">pprof</span><span class="o">/</span><span class="n">heap</span><span class="err">?</span><span class="n">password</span><span class="o">=</span><span class="mi">8</span><span class="n">kcUz1I2sLaywQhCRtn2x1</span>
|
||
<span class="n">go</span><span class="w"> </span><span class="k">tool</span><span class="w"> </span><span class="n">pprof</span><span class="w"> </span><span class="n">http</span><span class="p">:</span><span class="o">//</span><span class="n">localhost</span><span class="p">:</span><span class="mi">8082</span><span class="o">/</span><span class="n">debug</span><span class="o">/</span><span class="n">pprof</span><span class="o">/</span><span class="n">profile</span><span class="err">?</span><span class="n">password</span><span class="o">=</span><span class="mi">8</span><span class="n">kcUz1I2sLaywQhCRtn2x1</span>
|
||
</code></pre></div>
|
||
|
||
<h2 id="notification-server-configuration">Notification server configuration<a class="headerlink" href="#notification-server-configuration" title="Permanent link">¶</a></h2>
|
||
<p>Since Seafile 10.0.0, you can enable the notification server by adding the following configuration options:</p>
|
||
<div class="codehilite"><pre><span></span><code><span class="cp"># jwt_private_key are required.You should generate it manually.</span>
|
||
<span class="p">[</span><span class="n">notification</span><span class="p">]</span>
|
||
<span class="n">enabled</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nb">true</span>
|
||
<span class="cp"># the listen IP of notification server. (Do not modify the host when using Nginx or Apache, as Nginx or Apache will proxy the requests to this address)</span>
|
||
<span class="n">host</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mf">127.0.0.1</span>
|
||
<span class="cp"># the port of notification server</span>
|
||
<span class="n">port</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">8083</span>
|
||
<span class="cp"># the log level of notification server</span>
|
||
<span class="n">log_level</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">info</span>
|
||
<span class="cp"># jwt_private_key is used to generate jwt token and authenticate seafile server</span>
|
||
<span class="n">jwt_private_key</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">M</span><span class="p">@</span><span class="n">O8VWUb81YvmtWLHGB2I_V7di5</span><span class="o">-</span><span class="mi">@0</span><span class="n">p</span><span class="p">(</span><span class="n">MF</span><span class="o">*</span><span class="n">GrE</span><span class="o">!</span><span class="n">sIws23F</span>
|
||
</code></pre></div>
|
||
|
||
<p>You can generate jwt_private_key with the following command:</p>
|
||
<div class="codehilite"><pre><span></span><code><span class="gh">#</span> generate jwt_private_key
|
||
openssl rand -base64 32
|
||
</code></pre></div>
|
||
|
||
<p>If you use nginx, then you also need to add the following configuration for nginx:</p>
|
||
<div class="codehilite"><pre><span></span><code><span class="n">server</span><span class="w"> </span><span class="p">{</span>
|
||
<span class="w"> </span><span class="o">...</span>
|
||
|
||
<span class="w"> </span><span class="n">location</span><span class="w"> </span><span class="o">/</span><span class="n">notification</span><span class="o">/</span><span class="n">ping</span><span class="w"> </span><span class="p">{</span>
|
||
<span class="w"> </span><span class="n">proxy_pass</span><span class="w"> </span><span class="n">http</span><span class="p">:</span><span class="o">//</span><span class="mf">127.0</span><span class="o">.</span><span class="mf">0.1</span><span class="p">:</span><span class="mi">8083</span><span class="o">/</span><span class="n">ping</span><span class="p">;</span>
|
||
<span class="w"> </span><span class="n">access_log</span><span class="w"> </span><span class="o">/</span><span class="k">var</span><span class="o">/</span><span class="nb">log</span><span class="o">/</span><span class="n">nginx</span><span class="o">/</span><span class="n">notification</span><span class="o">.</span><span class="n">access</span><span class="o">.</span><span class="n">log</span><span class="w"> </span><span class="n">seafileformat</span><span class="p">;</span>
|
||
<span class="w"> </span><span class="n">error_log</span><span class="w"> </span><span class="o">/</span><span class="k">var</span><span class="o">/</span><span class="nb">log</span><span class="o">/</span><span class="n">nginx</span><span class="o">/</span><span class="n">notification</span><span class="o">.</span><span class="n">error</span><span class="o">.</span><span class="n">log</span><span class="p">;</span>
|
||
<span class="w"> </span><span class="p">}</span>
|
||
<span class="w"> </span><span class="n">location</span><span class="w"> </span><span class="o">/</span><span class="n">notification</span><span class="w"> </span><span class="p">{</span>
|
||
<span class="w"> </span><span class="n">proxy_pass</span><span class="w"> </span><span class="n">http</span><span class="p">:</span><span class="o">//</span><span class="mf">127.0</span><span class="o">.</span><span class="mf">0.1</span><span class="p">:</span><span class="mi">8083</span><span class="o">/</span><span class="p">;</span>
|
||
<span class="w"> </span><span class="n">proxy_http_version</span><span class="w"> </span><span class="mf">1.1</span><span class="p">;</span>
|
||
<span class="w"> </span><span class="n">proxy_set_header</span><span class="w"> </span><span class="n">Upgrade</span><span class="w"> </span><span class="o">$</span><span class="n">http_upgrade</span><span class="p">;</span>
|
||
<span class="w"> </span><span class="n">proxy_set_header</span><span class="w"> </span><span class="n">Connection</span><span class="w"> </span><span class="s2">"upgrade"</span><span class="p">;</span>
|
||
<span class="w"> </span><span class="n">access_log</span><span class="w"> </span><span class="o">/</span><span class="k">var</span><span class="o">/</span><span class="nb">log</span><span class="o">/</span><span class="n">nginx</span><span class="o">/</span><span class="n">notification</span><span class="o">.</span><span class="n">access</span><span class="o">.</span><span class="n">log</span><span class="w"> </span><span class="n">seafileformat</span><span class="p">;</span>
|
||
<span class="w"> </span><span class="n">error_log</span><span class="w"> </span><span class="o">/</span><span class="k">var</span><span class="o">/</span><span class="nb">log</span><span class="o">/</span><span class="n">nginx</span><span class="o">/</span><span class="n">notification</span><span class="o">.</span><span class="n">error</span><span class="o">.</span><span class="n">log</span><span class="p">;</span>
|
||
<span class="w"> </span><span class="p">}</span>
|
||
|
||
<span class="w"> </span><span class="o">...</span>
|
||
<span class="p">}</span>
|
||
</code></pre></div>
|
||
|
||
<p>Or add the configuration for Apache:</p>
|
||
<div class="codehilite"><pre><span></span><code> ProxyPass /notification/ping http://127.0.0.1:8083/ping/
|
||
ProxyPassReverse /notification/ping http://127.0.0.1:8083/ping/
|
||
|
||
ProxyPass /notification ws://127.0.0.1:8083/
|
||
ProxyPassReverse /notification ws://127.0.0.1:8083/
|
||
</code></pre></div>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
</article>
|
||
</div>
|
||
|
||
|
||
<script>var target=document.getElementById(location.hash.slice(1));target&&target.name&&(target.checked=target.name.startsWith("__tabbed_"))</script>
|
||
</div>
|
||
|
||
</main>
|
||
|
||
<footer class="md-footer">
|
||
|
||
<div class="md-footer-meta md-typeset">
|
||
<div class="md-footer-meta__inner md-grid">
|
||
<div class="md-copyright">
|
||
|
||
<div class="md-copyright__highlight">
|
||
Copyright © 2023 Seafile Ltd.
|
||
</div>
|
||
|
||
|
||
Made with
|
||
<a href="https://squidfunk.github.io/mkdocs-material/" target="_blank" rel="noopener">
|
||
Material for MkDocs
|
||
</a>
|
||
|
||
</div>
|
||
|
||
<div class="md-social">
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<a href="https://github.com/haiwen/seafile-admin-docs/" target="_blank" rel="noopener" title="github.com" class="md-social__link">
|
||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><!--! Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6m-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3m44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9M244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8M97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1m-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7m32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1m-11.4-14.7c-1.6 1-1.6 3.6 0 5.9s4.3 3.3 5.6 2.3c1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2"/></svg>
|
||
</a>
|
||
|
||
</div>
|
||
|
||
</div>
|
||
</div>
|
||
</footer>
|
||
|
||
</div>
|
||
<div class="md-dialog" data-md-component="dialog">
|
||
<div class="md-dialog__inner md-typeset"></div>
|
||
</div>
|
||
|
||
|
||
<script id="__config" type="application/json">{"base": "../..", "features": [], "search": "../../assets/javascripts/workers/search.6ce7567c.min.js", "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version": "Select version"}}</script>
|
||
|
||
|
||
<script src="../../assets/javascripts/bundle.525ec568.min.js"></script>
|
||
|
||
|
||
</body>
|
||
</html> |