• 部署Seafile服务


    介绍

    安装脚本

    sudo apt-get install mysql-server #安装mysql并按照提示设置管理用户,记住管理密码
    sudo apt-get python2.7 python-setuptools python-imaging python-ldap python-mysqldb python-memcache
    mkdir haiwen && cd haiwen
    wget http://download-cn.seafile.com/seafile-server_5.0.4_i386.tar.gz && tar zxf seafile-server*.tar.gz
    mkdir installed && mv seafile-server_* installed
    cd seafile-server-*
    ./setup-seafile-mysql.sh  #运行安装脚本并回答预设问题,会自动创建数据库
    

    运行

    #在 seafile-server-1.8.2 目录下,运行如下命令:
    ./seafile.sh start
    ./seahub start 
    

    排错

    大多数情况下 seafile.sh seahub.sh 脚本可以正常工作。如果遇到问题:

    使用pgrep命令检查 seafile/seahub 进程是否还在运行中

    pgrep -f seafile-controller # 查看 Seafile 进程
    pgrep -f "manage.py run_gunicorn" # 查看 Seahub 进程
    

    配置Nginx

    参考文档:http://manual-cn.seafile.com/deploy/deploy_with_nginx.html

    • 修改 SERVICE_URL 和 FILE_SERVER_ROOT
    • 修改 ccnet.conf
    • 修改 seahub_settings.py

    通过Nginx进行代理

    #更改haiwen/conf/ccnet.conf文件中SERVICE_URL 的值
    SERVICE_URL = http://your.domain.com
    ./seafile.sh restart
    ./seahub.sh restart-fastcgi
    

    Nginx配置:

    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; #更改media静态文件路径
        }
    }
    

    重启Nginx(我使用supervisor管理):

    supervisorctl reload
    

    注意事项:

    media静态文件文件夹要给予必要的访问权限,否则会出现403错误。nginx默认用户为www-data,默认用户组为www-data,所以要把media文件夹以及上层路径更改用户和用户组,或者更改八进制的访问权限。

    chmod -R www-data:www-data media
    
  • 相关阅读:
    Android Studio快捷键
    Eclipse常用快捷键
    沉浸式状态栏
    JAVA起名规范
    c语言求数组长度
    自定义checkbox风格
    退出所有应用,监控打开了什么活动
    android权限大全
    广播接收者Receiver
    ImageView的常用属性
  • 原文地址:https://www.cnblogs.com/weaming/p/5175985.html
Copyright © 2020-2023  润新知