V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
qzheng93
V2EX  ›  问与答

seafile+ nginx on centos7 502 错误

  •  
  •   qzheng93 · 2017-03-04 07:53:56 +08:00 · 2787 次点击
    这是一个创建于 2612 天前的主题,其中的信息可能已经有所发展或是发生改变。

    各位大神赐教,

    • Nginx 配置文件

        server {
            listen 80;
            server_name XXX;
            rewrite ^ https://$http_host$request_uri? permanent;    #强制将 http 重定向到 https
        }
        server {
          listen 443;
          ssl on;
          ssl_certificate XXX;    #cacert.pem 文件路径
          ssl_certificate_key XXX;    #privkey.pem 文件路径
          server_name XXX;
          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   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;
                }
      
    • seahub_setting.py

    FILE_SERVER_ROOT = 'https://XXX/seafhttp'

    • seafile.conf

    SERVICE_URL = https://XXX

    • 启动方式:

    seahub.sh start-fastcgi

    都是按照文档里面配置的。 firewalld 也关了。

    seafile 装在 docker 里面, docker 外 curl 错误:

    curl: (56) Recv failure: Connection reset by peer

    直接访问域名出现 502 错误,可以访问 seafdav 界面。

    5 条回复    2017-03-04 10:41:11 +08:00
    Eleutherios
        1
    Eleutherios  
       2017-03-04 09:18:21 +08:00
    哪个 docker image?

    docker run 的参数是什么?

    docker exec CONTAINER netstat -ntpl 的返回结果是什么?

    firewalld 为什么关?明明可以只开端口……
    Eleutherios
        2
    Eleutherios  
       2017-03-04 09:18:55 +08:00
    docker 里的 logs 你都看过了么?
    /PATH/TO/SEAFILE/logs/*.log
    qzheng93
        3
    qzheng93  
    OP
       2017-03-04 09:58:03 +08:00
    @Eleutherios
    多谢大神回复,

    萌新。。 firewall 不太会用就先关了。

    docker 里面没有 netstat 也没 yum ,就还没装,等下我下个包装一下。

    docker run 的参数是这个:

    docker run -d --name seafile_server -p 8000:8000 -p 8082:8082 -p 8080:8081 -v /home/seafile/:/opt/seafile/ -e workaround478=true jenserat/seafile

    之前有带 -e fastcgi=true 也是一样的错误不知道有没有用就先删了。

    docker 里面的 log ccnet ../common/peer.c(943): Local peer down

    nginx 的 seahub.error.log 是这个错
    recv() failed (104: Connection reset by peer) while reading response header from upstream
    Eleutherios
        4
    Eleutherios  
       2017-03-04 10:28:05 +08:00
    nginx 的 seahub.error.log 是这个错
    recv() failed (104: Connection reset by peer) while reading response header from upstream

    意味着 upstream 的 seahub 出错
    所以你应该查 $SEAFILE_PATH/logs/seahub.log

    如果你愿意的话,可以试试这个:
    https://github.com/coeusite/coeusite.github.io/blob/master/_posts/2016-09-27-Docker-Containers-on-My-Dedibox.adoc
    https://hub.docker.com/r/coeusite/docker-seafile/
    qzheng93
        5
    qzheng93  
    OP
       2017-03-04 10:41:11 +08:00
    @Eleutherios 我 seahub 的 log 是空的。我之后试一下这个镜像~
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3673 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 04:22 · PVG 12:22 · LAX 21:22 · JFK 00:22
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.