Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

中国移动云盘个人云使用 webdav 上传失败 #7784

Open
4 tasks done
Plyer opened this issue Jan 6, 2025 · 13 comments
Open
4 tasks done

中国移动云盘个人云使用 webdav 上传失败 #7784

Plyer opened this issue Jan 6, 2025 · 13 comments
Labels
bug Something isn't working

Comments

@Plyer
Copy link

Plyer commented Jan 6, 2025

Please make sure of the following things

  • I have read the documentation.
    我已经阅读了文档

  • I'm sure there are no duplicate issues or discussions.
    我确定没有重复的issue或讨论。

  • I'm sure it's due to AList and not something else(such as Network ,Dependencies or Operational).
    我确定是AList的问题,而不是其他原因(例如网络依赖操作)。

  • I'm sure this issue is not fixed in the latest version.
    我确定这个问题在最新版本中没有被修复。

AList Version / AList 版本

v3.41.0

Driver used / 使用的存储驱动

中国移动云盘

Describe the bug / 问题描述

在 iPhone 上使用 Fileball APP 通过 webdav 协议连接自建的公网 Alist,上传图片到中国移动云盘-个人云失败。

部署方式:阿里云 ECS,Docker Compose,使用 Traefik 反向代理。
系统版本:Ubuntu 22.04.4 LTS x86_64。

已验证的情况:

  • 更换版本 latest、v3.40.0、v3.35.0、v3.33.0 重新部署问题依然存在。
  • 在同一 Alist 版本上传相同文件到阿里云盘挂载成功,但上传到中国移动云盘失败。
  • 修改根文件夹 ID 为空或正确的根目录 ID 问题依然存在。

Reproduction / 复现链接

非网页问题无法提供链接。

Config / 配置

Alist Docker Compose:

  alist:
    image: 'xhofe/alist:v3.41.0'
    container_name: alist
    command: ./alist server --debug
    restart: on-failure:3
    volumes:
      - 'alist:/opt/alist/data'
    logging:
      driver: json-file
      options:
        max-size: "10m"
        max-file: "3"
    labels:
      traefik.enable: "true"
      traefik.http.routers.alist.rule: "Host(`alist.example.com`)"
      traefik.http.routers.alist.entrypoints: "websecure"

volumes:
  alist:
  
networks:
  default:
    name: frontend
    external: true

Alist config.json:

{
  "force": false,
  "site_url": "",
  "cdn": "",
  "jwt_secret": "example",
  "token_expires_in": 48,
  "database": {
    "type": "sqlite3",
    "host": "",
    "port": 0,
    "user": "",
    "password": "",
    "name": "",
    "db_file": "data/data.db",
    "table_prefix": "x_",
    "ssl_mode": "",
    "dsn": ""
  },
  "meilisearch": {
    "host": "http://localhost:7700",
    "api_key": "",
    "index_prefix": ""
  },
  "scheme": {
    "address": "0.0.0.0",
    "http_port": 5244,
    "https_port": -1,
    "force_https": false,
    "cert_file": "",
    "key_file": "",
    "unix_file": "",
    "unix_file_perm": ""
  },
  "temp_dir": "data/temp",
  "bleve_dir": "data/bleve",
  "dist_dir": "",
  "log": {
    "enable": true,
    "name": "data/log/log.log",
    "max_size": 50,
    "max_backups": 30,
    "max_age": 28,
    "compress": false
  },
  "delayed_start": 0,
  "max_connections": 0,
  "tls_insecure_skip_verify": true,
  "tasks": {
    "download": {
      "workers": 5,
      "max_retry": 1,
      "task_persistant": false
    },
    "transfer": {
      "workers": 5,
      "max_retry": 2,
      "task_persistant": false
    },
    "upload": {
      "workers": 5,
      "max_retry": 0,
      "task_persistant": false
    },
    "copy": {
      "workers": 5,
      "max_retry": 2,
      "task_persistant": false
    }
  },
  "cors": {
    "allow_origins": [
      "*"
    ],
    "allow_methods": [
      "*"
    ],
    "allow_headers": [
      "*"
    ]
  },
  "s3": {
    "enable": false,
    "port": 5246,
    "ssl": false
  },
  "ftp": {
    "enable": false,
    "listen": ":5221",
    "find_pasv_port_attempts": 50,
    "active_transfer_port_non_20": false,
    "idle_timeout": 900,
    "connection_timeout": 30,
    "disable_active_mode": false,
    "default_transfer_binary": false,
    "enable_active_conn_ip_check": true,
    "enable_pasv_conn_ip_check": true
  },
  "sftp": {
    "enable": false,
    "listen": ":5222"
  }
}

移动云盘存储配置:

IMG_7282

Logs / 日志

开始上传图片

DEBU[2025-01-06 04:29:04]/home/runner/work/alist/alist/internal/op/path.go:25 github.com/alist-org/alist/v3/internal/op.GetStorageAndActualPath() use storage:  /中国移动云盘-个人云                    
DEBU[2025-01-06 04:29:04]/home/runner/work/alist/alist/internal/op/fs.go:165 github.com/alist-org/alist/v3/internal/op.Get() op.Get /IMG_0030.jpeg                        
DEBU[2025-01-06 04:29:04]/home/runner/work/alist/alist/internal/op/fs.go:108 github.com/alist-org/alist/v3/internal/op.List() op.List /                                    
DEBU[2025-01-06 04:29:04]/home/runner/work/alist/alist/internal/op/fs.go:165 github.com/alist-org/alist/v3/internal/op.Get() op.Get /                                     
DEBU[2025-01-06 04:29:04]/home/runner/work/alist/alist/internal/op/fs.go:120 github.com/alist-org/alist/v3/internal/op.List() list dir: &{ID:exampleID Path: Name:root Size:0 Modified:2025-01-06 04:20:19.115905508 +0000 UTC m=+10746.389886673 Ctime:0001-01-01 00:00:00 +0000 UTC IsFolder:true HashInfo:null} 
DEBU[2025-01-06 04:29:05]/home/runner/work/alist/alist/drivers/139/util.go:122 github.com/alist-org/alist/v3/drivers/139.(*Yun139).request() {"success":true,"code":"0","message":"OK","data":{"result":{"resultCode":"0","resultDesc":null},"getDiskResult":{"parentCatalogID":"exampleID","nodeCount":0,"catalogList":null,"contentList":null,"isCompleted":1}}} 
DEBU[2025-01-06 04:29:05]/home/runner/work/alist/alist/internal/op/fs.go:153 github.com/alist-org/alist/v3/internal/op.List.func1() del cache: /中国移动云盘-个人云                       
DEBU[2025-01-06 04:29:05]/home/runner/work/alist/alist/internal/op/fs.go:226 github.com/alist-org/alist/v3/internal/op.Get() cant find obj with name: IMG_0030.jpeg       
DEBU[2025-01-06 04:29:05]/home/runner/work/alist/alist/internal/op/fs.go:165 github.com/alist-org/alist/v3/internal/op.Get() op.Get /                                     
DEBU[2025-01-06 04:29:05]/home/runner/work/alist/alist/internal/op/fs.go:165 github.com/alist-org/alist/v3/internal/op.Get() op.Get /                                     
DEBU[2025-01-06 04:29:05]/home/runner/work/alist/alist/drivers/139/util.go:122 github.com/alist-org/alist/v3/drivers/139.(*Yun139).request() {"success":true,"code":"0","message":"OK","data":{"result":{"resultCode":"0","resultDesc":null},"uploadResult":{"uploadTaskID":"MA0a11jp94Q1wV71517yLq-7gYZ","redirectionUrl":"https://upload6.mcloud.139.com:443/storageWeb/servlet/uploadFileServlet?uploadCode=TUEwYTExanA5NFExd1Y3MTUxN3lMcS03Z1la&txType=0&oprChannel=10000034&dom=D933&rate=0","newContentIDList":[{"contentID":"0a11jp94Q1wV03220250106122905jc4","contentName":"IMG_0030.jpeg","isNeedUpload":"1","fileEtag":1987523569415196650,"fileVersion":1987523569415196651,"overridenFlag":0}],"catalogIDList":null,"isSlice":null}}} 
DEBU[2025-01-06 04:29:05]/home/runner/work/alist/alist/drivers/139/driver.go:736 github.com/alist-org/alist/v3/drivers/139.(*Yun139).Put() &{Status:200 OK StatusCode:200 Proto:HTTP/1.1 ProtoMajor:1 ProtoMinor:1 Header:map[Connection:[keep-alive] Content-Length:[81] Content-Range:[bytes 0-0/-1] Date:[Mon, 06 Jan 2025 04:29:05 GMT] Server:[Tengine] Strict-Transport-Security:[max-age=31536000; includeSubDomains] X-Trace-Flowid:[3825952] X-Trace-Sessionid:[1a52a47afd0a3e77d4ce517410b2ece5]] Body:0xc000a33360 ContentLength:81 TransferEncoding:[] Close:false Uncompressed:false Trailer:map[] Request:0xc0005bb040 TLS:0xc000000780} 
DEBU[2025-01-06 04:29:05]/home/runner/work/alist/alist/internal/op/fs.go:568 github.com/alist-org/alist/v3/internal/op.Put() put file [IMG_0030.jpeg] done                
DEBU[2025-01-06 04:29:05]/home/runner/work/alist/alist/internal/op/path.go:25 github.com/alist-org/alist/v3/internal/op.GetStorageAndActualPath() use storage:  /中国移动云盘-个人云                    
DEBU[2025-01-06 04:29:05]/home/runner/work/alist/alist/internal/op/fs.go:165 github.com/alist-org/alist/v3/internal/op.Get() op.Get /IMG_0030.jpeg                        
DEBU[2025-01-06 04:29:05]/home/runner/work/alist/alist/internal/op/fs.go:108 github.com/alist-org/alist/v3/internal/op.List() op.List /                                    
DEBU[2025-01-06 04:29:05]/home/runner/work/alist/alist/internal/op/fs.go:165 github.com/alist-org/alist/v3/internal/op.Get() op.Get /                                     
DEBU[2025-01-06 04:29:05]/home/runner/work/alist/alist/internal/op/fs.go:120 github.com/alist-org/alist/v3/internal/op.List() list dir: &{ID:exampleID Path: Name:root Size:0 Modified:2025-01-06 04:20:19.115905508 +0000 UTC m=+10746.389886673 Ctime:0001-01-01 00:00:00 +0000 UTC IsFolder:true HashInfo:null} 
DEBU[2025-01-06 04:29:05]/home/runner/work/alist/alist/drivers/139/util.go:122 github.com/alist-org/alist/v3/drivers/139.(*Yun139).request() {"success":true,"code":"0","message":"OK","data":{"result":{"resultCode":"0","resultDesc":null},"getDiskResult":{"parentCatalogID":"exampleID","nodeCount":0,"catalogList":null,"contentList":null,"isCompleted":1}}} 
DEBU[2025-01-06 04:29:05]/home/runner/work/alist/alist/internal/op/fs.go:153 github.com/alist-org/alist/v3/internal/op.List.func1() del cache: /中国移动云盘-个人云                       
DEBU[2025-01-06 04:29:05]/home/runner/work/alist/alist/internal/op/fs.go:226 github.com/alist-org/alist/v3/internal/op.Get() cant find obj with name: IMG_0030.jpeg       
WARN[2025-01-06 04:29:05]/home/runner/work/alist/alist/internal/fs/fs.go:40 github.com/alist-org/alist/v3/internal/fs.Get() failed get /中国移动云盘-个人云/IMG_0030.jpeg: object not found 
[GIN] 2025/01/06 - 04:29:05 | 201 |  888.874396ms |   36.22.241.255 | PUT      "/dav/中国移动云盘-个人云/IMG_0030.jpeg"

上传结束,已失败,云盘上不存在刚才上传的文件。

@Plyer Plyer added the bug Something isn't working label Jan 6, 2025
Copy link

github-actions bot commented Jan 6, 2025

@Plyer
Copy link
Author

Plyer commented Jan 6, 2025

根据日志和中国移动云盘上传接口文档分析,上传的两个阶段请求都已成功,但不清楚为什么云盘上文件就是不存在。

@pongfcnkl
Copy link

改新个人云,然后重新上传

@Plyer
Copy link
Author

Plyer commented Jan 6, 2025

改新个人云,然后重新上传

修改后提示"用户不存在",原个人云类型是正确的,可以正常进行读取、修改。

@pongfcnkl
Copy link

改新个人云,然后重新上传

修改后提示"用户不存在",原个人云类型是正确的,可以正常进行读取、修改。

根文件夹你没改掉

@Plyer
Copy link
Author

Plyer commented Jan 6, 2025

经过新的测试,在 PC 端使用 RaiDrive 可以上传成功。但 ios 端 Fileball 依然存在问题,猜测是客户端请求方式差异触发后端的上传 BUG。

@Plyer
Copy link
Author

Plyer commented Jan 6, 2025

改新个人云,然后重新上传

修改后提示"用户不存在",原个人云类型是正确的,可以正常进行读取、修改。

根文件夹你没改掉

根据 Alist 文档从 Cookie 获取的认证 Token 和从本地存储获取的目录 id 跟从 getDisk 获取的信息一致,所以我仅更改了类型为新个人云,更改后提示“用户不存在”,说明我的移动云盘类型是“个人云”。

@pongfcnkl
Copy link

改新个人云,然后重新上传

修改后提示"用户不存在",原个人云类型是正确的,可以正常进行读取、修改。

根文件夹你没改掉

根据 Alist 文档从 Cookie 获取的认证 Token 和从本地存储获取的目录 id 跟从 getDisk 获取的信息一致,所以我仅更改了类型为新个人云,更改后提示“用户不存在”,说明我的移动云盘类型是“个人云”。

那个文档已经好久没更新了,移动上年底把所有号都迁移到新个人云了。
你重新获取Authorization 新个人云 根目录填/

@Plyer
Copy link
Author

Plyer commented Jan 6, 2025

改新个人云,然后重新上传

修改后提示"用户不存在",原个人云类型是正确的,可以正常进行读取、修改。

根文件夹你没改掉

根据 Alist 文档从 Cookie 获取的认证 Token 和从本地存储获取的目录 id 跟从 getDisk 获取的信息一致,所以我仅更改了类型为新个人云,更改后提示“用户不存在”,说明我的移动云盘类型是“个人云”。

那个文档已经好久没更新了,移动上年底把所有号都迁移到新个人云了。 你重新获取Authorization 新个人云 根目录填/

修改 Alist 移动云盘挂载的 3 个参数 Authorization、新个人云、根目录后,进入 Alist 挂载目录提示“用户不存在”。你说的根目录是改这里吗?
PixPin_2025-01-06_20-20-41
PixPin_2025-01-06_20-21-32

@Plyer
Copy link
Author

Plyer commented Jan 6, 2025

使用“个人云”类型,ios 使用 Owlfiles APP 上传移动云盘成功。可以确定是 ios Fileball APP 上传移动云盘有问题,奇怪的点在于相同文件使用 Fileball 上传阿里云盘可以成功😂。

@pongfcnkl
Copy link

改新个人云,然后重新上传

修改后提示"用户不存在",原个人云类型是正确的,可以正常进行读取、修改。

根文件夹你没改掉

根据 Alist 文档从 Cookie 获取的认证 Token 和从本地存储获取的目录 id 跟从 getDisk 获取的信息一致,所以我仅更改了类型为新个人云,更改后提示“用户不存在”,说明我的移动云盘类型是“个人云”。

那个文档已经好久没更新了,移动上年底把所有号都迁移到新个人云了。 你重新获取Authorization 新个人云 根目录填/

修改 Alist 移动云盘挂载的 3 个参数 Authorization、新个人云、根目录后,进入 Alist 挂载目录提示“用户不存在”。你说的根目录是改这里吗? PixPin_2025-01-06_20-20-41 PixPin_2025-01-06_20-21-32

改完刷新一下缓存

@Plyer
Copy link
Author

Plyer commented Jan 6, 2025

刷新缓存依然是用户不存在。很明显正确的类型是“个人云”,上传失败的根因在于 Fileball 上传触发,一开始的设置都是正确的。

@pongfcnkl
Copy link

刷新缓存依然是用户不存在。很明显正确的类型是“个人云”,上传失败的根因在于 Fileball 上传触发,一开始的设置都是正确的。

你删除了重新添加吧

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants