Apache 下启用 Https

请使用 Apache 2.4 版本。

通过 OpenSSL 生成 SSL 数字认证

免费 Self-Signed SSL 数字认证用户请看. 如果你是 SSL 付费认证用户可跳过此步.

  1. openssl genrsa -out privkey.pem 2048
  2. openssl req -new -x509 -key privkey.pem -out cacert.pem -days 1095

在 Seahub 端启用 https

假设你已经按照Apache 下配置 Seahub对 Apache 进行了相关设置.请启用 mod_ssl

  1. [sudo] a2enmod ssl

接下来修改你的 Apache 配置文件,这是示例:

  1. <VirtualHost *:443>
  2. ServerName www.myseafile.com
  3. DocumentRoot /var/www
  4. SSLEngine On
  5. SSLCertificateFile /path/to/cacert.pem
  6. SSLCertificateKeyFile /path/to/privkey.pem
  7. Alias /media /home/user/haiwen/seafile-server-latest/seahub/media
  8. <Location /media>
  9. Require all granted
  10. </Location>
  11. RewriteEngine On
  12. #
  13. # seafile fileserver
  14. #
  15. ProxyPass /seafhttp http://127.0.0.1:8082
  16. ProxyPassReverse /seafhttp http://127.0.0.1:8082
  17. RewriteRule ^/seafhttp - [QSA,L]
  18. #
  19. # seahub
  20. #
  21. SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1
  22. ProxyPass / http://127.0.0.1:8000/
  23. ProxyPassReverse / http://127.0.0.1:8000/
  24. </VirtualHost>

修改 SERVICE_URL 和 FILE_SERVER_ROOT

下面还需要更新 SERVICE_URL 和 FILE_SERVER_ROOT 这两个配置项。否则无法通过 Web 正常的上传和下载文件。

5.0 版本开始,您可以直接通过管理员 Web 界面来设置这两个值:(注意,如果同时在 Web 界面和配置文件中设置了这个值,以 Web 界面的配置为准。)

  1. SERVICE_URL: https://www.myseafile.com
  2. FILE_SERVER_ROOT: https://www.myseafile.com/seafhttp

启动 Seafile 和 Seahub

  1. ./seafile.sh start
  2. ./seahub.sh start # 如果你使用 fastcgi 请使用此命令`./seahub.sh start-fastcgi`

原文: https://manual-cn.seafile.com/deploy/https_with_apache.html