亚洲国产成人精品在线播放_日韩第一页在线观看_人人插人人摸精品在线视频_日韩黄色成人电影_国产人成无码视频在线观看_国产91热爆ts人妖系列_免费观看欧美一级_午夜影院操一操黄片_午夜大片免费爽爽爽影院_日本少妇中文三级

Contact Us

Address: 1st Floor,Building 4, 1088th, Huyi highway, Shanghai
TEL:021-31080981
Email:soline@soline.com.cn
P.C.:201802

Seafile+Onlyoffice collaborative version solution

Linux 下部署 Seafile 服務(wù)器

此文檔用來(lái)說(shuō)明如何使用預(yù)編譯安裝包來(lái)部署 Seafile 服務(wù)器.

使用安裝腳本在 Ubuntu 16.04 或 CentOS 7 上快速安裝

我們準(zhǔn)備了一個(gè)安裝腳本幫助您在 Ubuntu 16.04 或 CentOS 7 快速的安裝部署 Seafile 服務(wù)(配置好 MariaDB, Memcached, WebDAV, Ngnix 和開(kāi)機(jī)自動(dòng)啟動(dòng)腳本): https://github.com/haiwen/seafile-server-installer-cn

在此基礎(chǔ)上,您可以繼續(xù)根據(jù)下面的文檔來(lái)配置郵箱發(fā)送等服務(wù)。

家庭/個(gè)人 環(huán)境下部署 Seafile 服務(wù)器

生產(chǎn)/企業(yè) 環(huán)境下部署 Seafile 服務(wù)器

企業(yè)環(huán)境下我們建議使用 MySQL 數(shù)據(jù)庫(kù),并將 Seafile 部署在 Nginx 或者 Apache 上,如果對(duì)于 Nginx 和 Apache 都不是很熟悉的話,我們建議使用 Nginx,相對(duì)于 Apache 來(lái)說(shuō),Nginx 使用起來(lái)比較簡(jiǎn)單。

對(duì)于部署Seafile服務(wù),我們提供了三種方式:

  • 使用Docker,這是我們主要推薦的部署方式.

  • 使用安裝腳本

  • 手動(dòng)安裝Seafile,建立數(shù)據(jù)庫(kù)、memcached、Nginx/Apache,建議閱讀下面章節(jié).

基礎(chǔ)功能:

高級(jí)功能:

其他部署事項(xiàng)

注意 如果在部署 Seafile 服務(wù)器時(shí)遇到困難

OnlyOffice 集成

從 6.1.0+ (包括開(kāi)源版) 版本開(kāi)始,Seafile 支持集成OnlyOffice來(lái)在線編輯和預(yù)覽office文檔。要想使用 OnlyOffice,你必須先部署一個(gè) OnlyOffice 服務(wù)。

關(guān)于集群

在集群部署中,我們建議在另一個(gè)子域中專門部署一臺(tái)DocumentServer主機(jī)或一個(gè)DocumentServer集群。從技術(shù)上來(lái)講,如果負(fù)載均衡器可以調(diào)度文件夾,它也可以通過(guò)子文件夾來(lái)工作。

對(duì)于大多數(shù)用戶,我們建議將documentserver部署為docker鏡像,并使用一個(gè)子文件夾來(lái)提供

這么做的好處:

  • 不需要依賴額外的服務(wù)器

  • 不需要依賴額外的子域

  • 不需要依賴額外的ssl證書(shū)

  • 部署方便快捷

  • 維護(hù)簡(jiǎn)單

    通過(guò)子域部署DocumentServer

URL 示例:https://onlyoffice.domain.com

  • 子域

  • 子域的DNS解析記錄

  • SSL證書(shū)
    我們建議您使用ONLYOFFICE/Docker-DocumentServer來(lái)簡(jiǎn)單快速的進(jìn)行子域安裝。只需要遵循這個(gè)OnlyOffice文檔指南。

測(cè)試 DocumentServer 是否在運(yùn)行

安裝過(guò)程完成后,訪問(wèn)這個(gè)頁(yè)面來(lái)確保您的 OnlyOffice 工作正常:http{s}://{your Seafile Server's domain or IP}/welcome,您將會(huì)在這個(gè)頁(yè)面中得到Document Server is running。

配置Seafile服務(wù)

添加以下配置信息到seahub_settings.py

# Enable Only OfficeENABLE_ONLYOFFICE = TrueVERIFY_ONLYOFFICE_CERTIFICATE = FalseONLYOFFICE_APIJS_URL = 'http{s}://{your OnlyOffice server's domain or IP}/web-apps/apps/api/documents/api.js'ONLYOFFICE_FILE_EXTENSION = ('doc', 'docx', 'ppt', 'pptx', 'xls', 'xlsx', 'odt', 'fodt', 'odp', 'fodp', 'ods', 'fods')ONLYOFFICE_EDIT_FILE_EXTENSION = ('docx', 'pptx', 'xlsx')

然后重啟Seafile服務(wù)

./seafile.sh restart./seahub.sh restart# orservice seafile-server restart

當(dāng)您點(diǎn)擊一個(gè)文檔您應(yīng)該會(huì)看到一個(gè)新的預(yù)覽頁(yè)面。

通過(guò)子文件夾部署DocumentServer

URL 示例:https://seafile.domain.com/onlyofficeds

  • 通過(guò)已存在的 Seafile 服務(wù)的域名代理到本地的子文件夾

  • 通過(guò) Seafile 服務(wù)域名的SSL鏈接,不需要依賴額外的證書(shū)!
    如果不是絕對(duì)需要,請(qǐng)不要更改子文件夾!

/onlyoffice/不能作為Seafile 和 Document服務(wù)之間的通信路徑來(lái)使用!

以下指南說(shuō)明了如何在本地部署一個(gè)OnlyOffice Document服務(wù)。

它基于"ONLYOFFICE/Docker-DocumentServer" documentation.

要求 只適用于通過(guò)Docker部署OnlyOffice DocumentServerhttps://github.com/ONLYOFFICE/Docker-DocumentServer#recommended-system-requirements

安裝Docker

UbuntuDebianCentOS

部署 OnlyOffice DocumentServer Docker 鏡像

這里下載并部署DocumentServer監(jiān)聽(tīng)在本地88端口。

Debian 8

docker run -i -t -d -p 88:80 --restart=always --name oods onlyoffice/documentserver

Ubuntu 16.04

docker run -dit -p 88:80 --restart always --name oods onlyoffice/documentserver

在CentOS 7上沒(méi)有任何確認(rèn),您可以嘗試以上任何一個(gè)命令,他們也可以工作。

示例:具有內(nèi)存限制的Debian Docker容器

在Debian 8中,您首先需要更改grub配置中的一些設(shè)置,以支持docker的內(nèi)存限制。

# 編輯 /etc/default/grub# 添加以下配置項(xiàng)GRUB_CMDLINE_LINUX_DEFAULT="cgroup_enable=memory swapaccount=1"# 更新Grub2并重啟update-grub2 && reboot

現(xiàn)在您可以在啟動(dòng)docker時(shí)設(shè)置內(nèi)存大小限制。

docker run -i -t -d -p 88:80 —restart=always —memory "6g" —memory-swap="6g" —name oods onlyoffice/documentserver

這些限制超過(guò)了建議的最小限制(4G RAM/2GB SWAP)因此當(dāng)多個(gè)用戶編輯文檔時(shí)DocumentServer's的性能保持不變。Docker SWAP不同于服務(wù)器 SWAP,點(diǎn)擊Docker文檔

Docker 文檔

如果你有任何疑問(wèn)請(qǐng)查看Docker文檔。

自動(dòng)運(yùn)行docker鏡像

如果你希望限制docker使用的資源請(qǐng)查看Docker文檔。

配置 webserver

配置 Nginx

添加以下配置到你的seafile的nginx配置中(e.g./etc/nginx/conf.d/seafile.conf)的searver配置段以外。將為DocumentServer定義這些變量以在子文件夾中工作。

# Required for only office document servermap $http_x_forwarded_proto $the_scheme {        default $http_x_forwarded_proto;        "" $scheme;    }map $http_x_forwarded_host $the_host {        default $http_x_forwarded_host;        "" $host;    }map $http_upgrade $proxy_connection {        default upgrade;        "" close;    }

添加以下配置到你的seafile的nginx配置中(e.g./etc/nginx/conf.d/seafile.conf)的searver配置段下。

...   location /onlyofficeds/ {        # THIS ONE IS IMPORTANT ! - Trailing slash !        proxy_pass http://{your Seafile server's domain or IP}:88/;        proxy_http_version 1.1;        client_max_body_size 100M; # Limit Document size to 100MB        proxy_read_timeout 3600s;        proxy_connect_timeout 3600s;        proxy_set_header Upgrade $http_upgrade;        proxy_set_header Connection $proxy_connection;        # THIS ONE IS IMPORTANT ! - Subfolder and NO trailing slash !        proxy_set_header X-Forwarded-Host $the_host/onlyofficeds;        proxy_set_header X-Forwarded-Proto $the_scheme;        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;    }...

配置Apache

添加以下配置到你的seafile apache配置文件中(e.g. sites-enabled/seafile.conf)的配置段以外。

...LoadModule authn_core_module modules/mod_authn_core.soLoadModule authz_core_module modules/mod_authz_core.soLoadModule unixd_module modules/mod_unixd.soLoadModule proxy_module modules/mod_proxy.soLoadModule proxy_http_module modules/mod_proxy_http.soLoadModule proxy_wstunnel_module modules/mod_proxy_wstunnel.soLoadModule headers_module modules/mod_headers.soLoadModule setenvif_module modules/mod_setenvif.so  User daemon  Group daemon...

添加以下配置到你的seafile apache配置文件中(e.g. sites-enabled/seafile.conf)的配置段的末尾。

...Define VPATH /onlyofficedsDefine DS_ADDRESS {your Seafile server's domain or IP}:88...  Require all granted  SetEnvIf Host "^(.*)$" THE_HOST=$1  RequestHeader setifempty X-Forwarded-Proto http  RequestHeader setifempty X-Forwarded-Host %{THE_HOST}e  RequestHeader edit X-Forwarded-Host (.*) $1${VPATH}  ProxyAddHeaders Off  ProxyPass "http://${DS_ADDRESS}/"  ProxyPassReverse "http://${DS_ADDRESS}/"...

測(cè)試DocumentServer正在通過(guò)子文件夾運(yùn)行

當(dāng)安裝過(guò)程完成后,訪問(wèn)這個(gè)頁(yè)面確保你部署的OnlyOffice工作正常:http{s}://{your Seafile Server's domain or IP}/{your subdolder}/welcome,你將會(huì)在這個(gè)頁(yè)面中得到Document Server is running。

配置seafile服務(wù)

添加以下配置項(xiàng)到seahub_settings.py:

# Enable Only OfficeENABLE_ONLYOFFICE = TrueVERIFY_ONLYOFFICE_CERTIFICATE = TrueONLYOFFICE_APIJS_URL = 'http{s}://{your Seafile server's domain or IP}/{your subdolder}/web-apps/apps/api/documents/api.js'ONLYOFFICE_FILE_EXTENSION = ('doc', 'docx', 'ppt', 'pptx', 'xls', 'xlsx', 'odt', 'fodt', 'odp', 'fodp', 'ods', 'fods')ONLYOFFICE_EDIT_FILE_EXTENSION = ('docx', 'pptx', 'xlsx')

然后重啟seafile服務(wù)。

./seafile.sh restart./seahub.sh restart# orservice seafile-server restart

當(dāng)你點(diǎn)擊一個(gè)文檔時(shí)你應(yīng)該看到一個(gè)新的預(yù)覽頁(yè)面。

完整的nginx配置示例

基于Seafile Server V6.1包含子文件夾方式部署OnlyOffice DocumentServer的完整nginx配置文件(e.g. /etc/nginx/conf.d/seafile.conf)示例:

# Required for OnlyOffice DocumentServermap $http_x_forwarded_proto $the_scheme {    default $http_x_forwarded_proto;    "" $scheme;}map $http_x_forwarded_host $the_host {    default $http_x_forwarded_host;    "" $host;}map $http_upgrade $proxy_connection {    default upgrade;    "" close;}server {        listen       80;        server_name  seafile.domain.com;        rewrite ^ https://$http_host$request_uri? permanent;    # force redirect http to https        server_tokens off;}server {        listen 443 http2;        ssl on;        ssl_certificate /etc/ssl/cacert.pem;        # path to your cacert.pem        ssl_certificate_key /etc/ssl/privkey.pem;    # path to your privkey.pem        server_name seafile.domain.com;        proxy_set_header X-Forwarded-For $remote_addr;        add_header Strict-Transport-Security "max-age=31536000; includeSubDomains";        server_tokens off;    #    # seahub    #    location / {        fastcgi_pass    127.0.0.1:8000;        fastcgi_param   SCRIPT_FILENAME     $document_root$fastcgi_script_name;        fastcgi_param   PATH_INFO           $fastcgi_script_name;        fastcgi_param   SERVER_PROTOCOL        $server_protocol;        fastcgi_param   QUERY_STRING        $query_string;        fastcgi_param   REQUEST_METHOD      $request_method;        fastcgi_param   CONTENT_TYPE        $content_type;        fastcgi_param   CONTENT_LENGTH      $content_length;        fastcgi_param   SERVER_ADDR         $server_addr;        fastcgi_param   SERVER_PORT         $server_port;        fastcgi_param   SERVER_NAME         $server_name;        fastcgi_param   REMOTE_ADDR         $remote_addr;        fastcgi_param   HTTPS               on;        fastcgi_param   HTTP_SCHEME         https;        access_log      /var/log/nginx/seahub.access.log;        error_log       /var/log/nginx/seahub.error.log;        fastcgi_read_timeout 36000;        client_max_body_size 0;    }    #    # seafile    #    location /seafhttp {        rewrite ^/seafhttp(.*)$ $1 break;        proxy_pass http://127.0.0.1:8082;        client_max_body_size 0;        proxy_connect_timeout  36000s;        proxy_read_timeout  36000s;        proxy_send_timeout  36000s;        send_timeout  36000s;    }    location /media {        root /home/user/haiwen/seafile-server-latest/seahub;    }    #    # seafdav (webdav)    #    location /seafdav {        fastcgi_pass    127.0.0.1:8080;        fastcgi_param   SCRIPT_FILENAME     $document_root$fastcgi_script_name;        fastcgi_param   PATH_INFO           $fastcgi_script_name;        fastcgi_param   SERVER_PROTOCOL     $server_protocol;        fastcgi_param   QUERY_STRING        $query_string;        fastcgi_param   REQUEST_METHOD      $request_method;        fastcgi_param   CONTENT_TYPE        $content_type;        fastcgi_param   CONTENT_LENGTH      $content_length;        fastcgi_param   SERVER_ADDR         $server_addr;        fastcgi_param   SERVER_PORT         $server_port;        fastcgi_param   SERVER_NAME         $server_name;        fastcgi_param   HTTPS               on;        client_max_body_size 0;        access_log      /var/log/nginx/seafdav.access.log;        error_log       /var/log/nginx/seafdav.error.log;    }    #    # onlyofficeds    #    location /onlyofficeds/ {        # IMPORTANT ! - Trailing slash !        proxy_pass http://127.0.0.1:88/;        proxy_http_version 1.1;        client_max_body_size 100M; # Limit Document size to 100MB        proxy_read_timeout 3600s;        proxy_connect_timeout 3600s;        proxy_set_header Upgrade $http_upgrade;        proxy_set_header Connection $proxy_connection;        # IMPORTANT ! - Subfolder and NO trailing slash !        proxy_set_header X-Forwarded-Host $the_host/onlyofficeds;        proxy_set_header X-Forwarded-Proto $the_scheme;        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;    }}

完整的Apache配置示例

LoadModule authn_core_module modules/mod_authn_core.soLoadModule authz_core_module modules/mod_authz_core.soLoadModule unixd_module modules/mod_unixd.soLoadModule proxy_module modules/mod_proxy.soLoadModule proxy_http_module modules/mod_proxy_http.soLoadModule proxy_wstunnel_module modules/mod_proxy_wstunnel.soLoadModule headers_module modules/mod_headers.soLoadModule setenvif_module modules/mod_setenvif.soLoadModule ssl_module modules/mod_ssl.so  User daemon  Group daemon    ServerName seafile.domain.com    ServerAlias domain.com    Redirect permanent / https://seafile.domain.com  ServerName seafile.domain.com  DocumentRoot /var/www  SSLEngine On  SSLCertificateFile /etc/ssl/cacert.pem  SSLCertificateKeyFile /etc/ssl/privkey.pem  ## Strong SSL Security  ## https://raymii.org/s/tutorials/Strong_SSL_Security_On_Apache2.html  SSLCipherSuite EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:ECDHE-RSA-AES128-SHA:DHE-RSA-AES128-GCM-SHA256:AES256+EDH:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA:DES-CBC3-SHA:HIGH:!aNULL:!eNULL:!EXPORT:!DES:!MD5:!PSK:!RC4  SSLProtocol All -SSLv2 -SSLv3  SSLCompression off  SSLHonorCipherOrder on  Alias /media  /home/user/haiwen/seafile-server-latest/seahub/media      Require all granted    RewriteEngine On  #  # seafile fileserver  #  ProxyPass /seafhttp http://127.0.0.1:8082  ProxyPassReverse /seafhttp http://127.0.0.1:8082  RewriteRule ^/seafhttp - [QSA,L]  #  # seahub  #  SetEnvIf Request_URI . proxy-fcgi-pathinfo=unescape  SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1  ProxyPass / fcgi://127.0.0.1:8000/  #  # onlyofficeds  #  Define VPATH /onlyofficeds  Define DS_ADDRESS {your Seafile server's domain or IP}:88    Require all granted  SetEnvIf Host "^(.*)$" THE_HOST=$1  RequestHeader setifempty X-Forwarded-Proto http  RequestHeader setifempty X-Forwarded-Host %{THE_HOST}e  RequestHeader edit X-Forwarded-Host (.*) $1${VPATH}  ProxyAddHeaders Off  ProxyPass "http://${DS_ADDRESS}/"  ProxyPassReverse "http://${DS_ADDRESS}/"