通過廣域網(WAN)訪問部署在局域網(LAN)的 Seafile 服務器,需要:
首先, 確保你的路由器支持端口轉發(fā)功能:
根據路由器管理手冊操作說明(或網絡搜索), 進入路由器的管理用戶界面。
找到包含 "轉發(fā)" 或者 "高級" 等關鍵詞的頁面, 說明此路由器支持端口轉發(fā)功能。
Seafile 服務器包含兩個組件, 請根據以下規(guī)則為 Seafile 組件設置端口轉發(fā)。
組件 | 默認端口 |
---|---|
fileserver | 8082 |
seahub | 8000 |
設置端口轉發(fā)后,可按以下步驟測試是否成功:
http://who.is
得到本機的IPtelnet <Your WAN IP> 8000
如果端口轉發(fā)配置成功,命令行會提示連接成功。否則, 會顯示 connection refused 或者 connection timeout, 提示連接不成功。
若未成功,原因可能如下:
服務器依賴于 ccnet.conf
中的 "SERVICE_URL" 和 seahub_setting.py
中的 FILE_SERVER_ROOT 來生成文件的上傳/下載鏈接 (從 5.0 開始這兩個值可以通過 Web 界面來設置)。如果使用內置的 web 服務器,改為
SERVICE_URL = http://<Your WAN IP>:8000
如果配置了 Nginx, 則需要修改為
SERVICE_URL = http://<Your WAN IP>
FILE_SERVER_ROOT = http://<Your WAN IP>/seafhttp
大部分路由器都支持 NAT loopback. 當你通過內網訪問 Seafile 時, 即使使用外部 IP ,流量仍然會直接通過內網走。
完成以上端口轉發(fā)配置工作后,就可以通過外網 IP 訪問部署在局域網內的 Seafile 服務器了。但是對于大多數(shù)人來說, 外網 IP 會被 ISP (互聯(lián)網服務提供商)定期更改, 這就使得,需要不斷的進行重新配置.
可以使用動態(tài)域名解析服務來解決這個問題。通過使用域名解析服務,你可以通過域名(而不是 IP)來訪問 Seahub,即使 IP 會不斷變化,但是域名始終會指向當前 IP。
互聯(lián)網上提供域名解析服務的有很多,我們推薦 www.noip.com。
怎樣使用域名解析服務,不在本手冊說明范圍之內,但是基本上,你需要遵循以下步驟:
當你配置好域名解析服務之后,需要對 ccnet.conf
進行更改 (或者通過管理員 Web 界面來修改):
SERVICE_URL = http://<你的域名>:8000
然后重新 Seafile 服務.
你如果使用內置的服務器,需要開啟 8000 和 8082 兩個端口。如果你的 Seafile 服務器是運行在 Nginx/Apache 環(huán)境下,并且開啟了 HTTPS, 則需要開啟 443 端口。
更多建議: