Seahub 是 Seafile 服務(wù)器的網(wǎng)站界面. SeafServer 用來處理瀏覽器端文件的上傳與下載. 默認(rèn)情況下, 它在 8082 端口上監(jiān)聽 HTTP 請求.
這里我們通過 fastcgi 部署 Seahub, 通過反向代理(Reverse Proxy)部署 SeafServer. 我們假設(shè)你已經(jīng)將 Seahub 綁定了域名"www.myseafile.com".
下面是一個 Nginx 配置文件的例子。
Ubuntu 下你可以
rm /etc/nginx/site-enabled/default
ln -s /etc/nginx/sites-available/seafile.conf /etc/nginx/sites-enabled/seafile.conf
server {
listen 80;
server_name www.myseafile.com;
proxy_set_header X-Forwarded-For $remote_addr;
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;
access_log /var/log/nginx/seahub.access.log;
error_log /var/log/nginx/seahub.error.log;
}
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;
}
location /media {
root /home/user/haiwen/seafile-server-latest/seahub;
}
}
Nginx 默認(rèn)設(shè)置 "client_max_body_size" 為 1M。如果上傳文件大于這個值的話,會報(bào)錯,相關(guān) HTTP 狀態(tài)碼為 423 ("Request Entity Too Large"). 你可以將值設(shè)為 0
以禁用此功能.
下面還需要更新 SERVICE_URL 和 FILE_SERVER_ROOT 這兩個配置項(xiàng)。否則無法通過 Web 正常的上傳和下載文件。
5.0 版本開始,您可以直接通過管理員 Web 界面來設(shè)置這兩個值 (注意,如果同時在 Web 界面和配置文件中設(shè)置了這個值,以 Web 界面的配置為準(zhǔn)。):
SERVICE_URL: http://www.myseafile.com
FILE_SERVER_ROOT: http://www.myseafile.com/seafhttp
5.0 版本之前需要修改 ccnet.conf 文件和 seahub_settings.py 文件
SERVICE_URL = http://www.myseafile.com
FILE_SERVER_ROOT = 'http://www.myseafile.com/seafhttp'
./seafile.sh start ./seahub.sh start-fastcgi
更多建議: