端口非443和80的情况下,头像地址错误


#1

通过追踪最终发现是API层面的问题,

请考虑修改一下。这个问题在社区版和pro版都存在。
公司环境通常都不会直接使用80和443端口


#2

这个我也发现了,头像链接不能把端口号带上,导致非80端口显示不出来%E6%89%B9%E6%B3%A8%202019-06-18%20193114


#3

同样碰到了,直接看图片地址,发现没带端口号


#5

你这锅seafile不背啊


#6

使用docker部署的community edition,也有头像地址错误的问题。
部署的是seafileltd/seafile-mc:latest, 对应的seafile版本信息为:Server Version: 7.0.5。部署端口为80和443。
seafile管理设置信息如下(下面的‘xxx.com’对应的是我们公司的实际域名):

  • SERVICE_URL: https://file.xxx.com
  • FILE_SERVER_ROOT: https://file.xxx.com/seafhttp

但是在webui中load的头像地址却为 http://file.xxx.com:8000/media/avatars

是不是docker内部的nginx配置有问题?另外,不确定pro版本是否有同样的问题。部署了两个community edition做实验,都出现了这个问题。应该比较容易复先。


#7

再贴一下service url setup的截图:
service_url_setup

PS: 在上个回帖中好像不能贴两张截图。


#8

这都这么久了怎么被翻出来。。
现在基于Docker部署的Pro最新版,已经没这个问题了。配置什么的都没改。


#10

遇到类似的问题,一搜就出来了。
最新的docker pro版的版本号是多少啊?我部署的docker CE版也是最新的,版本号为7.0.5。


#12

使用的是官方的docker镜像seafileltd/seafile-mc:latest,没有对docker内部的配置做任何修改,进docker看了一下,内部确实有nginx,应该用的是nginx反代。docker-compose.yml内直接配置的80和443端口。文件内容如下:

version: '2.0'
services:
  db:
    image: mariadb:10.1
    container_name: seafile-mysql
    environment:
      - MYSQL_ROOT_PASSWORD=xxxxxxxxxxxxxxxx     # Required, set the root's password of MySQL service.
      - MYSQL_LOG_CONSOLE=true
    volumes:
      - /home/seafile/hdd2/mysql:/var/lib/mysql  # Required, specifies the path to MySQL data persistent store.
    networks:
      - seafile-net

  memcached:
    image: memcached:1.5.6
    container_name: seafile-memcached
    entrypoint: memcached -m 256
    networks:
      - seafile-net

  seafile:
    image: seafileltd/seafile-mc:latest
    container_name: seafile
    ports:
      - "80:80"
      - "443:443"                                   # If https is enabled, cancel the comment.
    volumes:
      - /home/seafile/hdd2/data:/shared             # Required, specifies the path to Seafile data persistent store.
    environment:
      - DB_HOST=db
      - DB_ROOT_PASSWD=xxxxxxxxxxxxxxxx             # Required, the value shuold be root's password of MySQL service.
      - TIME_ZONE=America/Vancouver                 # Optional, default is UTC. Should be uncomment and set to your local time zone.
      - SEAFILE_ADMIN_EMAIL=xxxxxxxxxxxxxxx         # Specifies Seafile admin user, default is 'me@example.com'.
      - SEAFILE_ADMIN_PASSWORD=xxxxxxxxxxxxx        # Specifies Seafile admin password, default is 'asecret'.
      - SEAFILE_SERVER_LETSENCRYPT=true             # Whether use letsencrypt to generate cert.
      - SEAFILE_SERVER_HOSTNAME=file.xxxxxx.com     # Specifies your host name.
    depends_on:
      - db
      - memcached
    networks:
      - seafile-net

networks:
  seafile-net:

#13

我没使用容器,不知道是否有很大区别


#14

SERVICE_URL和FILE_SERVER_ROOT都设置过后
去吧 tmp/seahub_cache 文件夹删除
再重启服务即可


#15

SERVICE_URL和FILE_SERVER_ROOT都设置过后
去吧 tmp/seahub_cache 文件夹删除
再重启服务


#16

SERVICE_URL和FILE_SERVER_ROOT都设置过后
去吧 tmp/seahub_cache 文件夹删除
再重启服务即可
研究了一下午 要确定两个连接设置正确


#17

有效,谢谢!