收起左侧

fnOS通过nginx反代无法添加至ColorOS

3
回复
192
查看
[ 复制链接 ]

1

主题

3

回帖

0

牛值

江湖小虾

2026-6-6 12:34:26 显示全部楼层 阅读模式
与ColorOS联合的新功能,我使用自己的域名进行nginx反代后无法添加至系统,但是通过路由器直接映射端口,再通过域名就可以添加。但是我默认是8888端口,ColorOS收到后,不按返回的URL来源就把你域名80/5667和fnconncte一个一个尝试
收藏
送赞
分享

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
2026-6-9 11:16:50 显示全部楼层

感谢反馈!反代场景可能受端口转发和回源策略影响,建议优先使用 fnConnect 连接,以保证 ColorOS 侧连接稳定性。

可是fncoonect限速严重,并不能有效备份照片视频,并且我有公网ip的情况下,使用fnconnect是不是有些多此一举了  详情 回复
2026-6-26 08:13

1

主题

3

回帖

0

牛值

江湖小虾

2026-6-26 08:13:17 楼主 显示全部楼层
飞牛运营同学 发表于 2026-6-9 11:16
感谢反馈!反代场景可能受端口转发和回源策略影响,建议优先使用 fnConnect 连接,以保证 ColorOS 侧连接稳 ...

可是fncoonect限速严重,并不能有效备份照片视频,并且我有公网ip的情况下,使用fnconnect是不是有些多此一举了

1

主题

3

回帖

0

牛值

江湖小虾

2026-6-26 16:56:29 楼主 显示全部楼层

OPPO 设备空间绑定 NAS 授权失败问题

问题现象

OPPO 设备空间绑定 NAS (Nginx)时提示"密码错误"。同一账号在 NAS 官方 App 可以正常登录。

环境

  • 网络:NAS 接在路由器下,通过 Nginx 网关对外提供服务
  • NAS 端口:5666(HTTP)、5667(HTTPS)
  • OPPO 设备空间版本:最新

排查过程

  1. 抓包发现设备空间请求的是 https://domain:5667/og.oauth2.v1.Oauth2Service/Authorize,走 gRPC 协议
  2. 最初在 Nginx 用 HTTP 代理将 5667 端口转发到 NAS 的 5666 端口(HTTP/1.1),授权失败
  3. 路由器直接映射 NAS 的 5667 端口后,授权成功
  4. curl 检查发现 NAS 5666 端口仅支持 HTTP/1.1,5667 端口支持 HTTP/2
  5. 根因:Nginx 将 gRPC 请求代理到 5666 端口时,协议被降级为 HTTP/1.1,gRPC 的状态码(trailers)丢失,导致认证结果无法正常返回

最终方案:grpc_pass

Nginx 从 1.13.10 开始内置了 ngx_http_grpc_module,专门代理 gRPC 流量。它会保持 HTTP/2 协议,正确处理 gRPC 的尾部状态码和流控。

思路是分而治之:gRPC 路径走 grpc_pass 重新加密到 NAS 的 HTTPS 端口 5667,保持 HTTP/2;其他请求走普通 proxy_pass 到 HTTP 端口 5666。

server {
    listen 5667 ssl;
    http2 on;
    server_name nas.mydomain.xxx;

    include snippets/ssl_cert.conf;

    # gRPC 路径 → 直通 NAS HTTPS(保持 HTTP/2)
    location ~ ^/(og|grpc)\. {
        grpc_pass grpcs://192.168.x.43:5667;
        grpc_ssl_verify off;
        grpc_ssl_name nas.mydomain.xxx;
        grpc_read_timeout 3600s;
        grpc_send_timeout 3600s;
    }

    # 其他路径 → 普通 HTTP 代理
    location / {
        proxy_pass http://192.168.x.43:5666;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_read_timeout 3600s;
        proxy_send_timeout 3600s;
        proxy_buffering off;
        proxy_request_buffering off;
    }
}

证书统一由网关管理,gRPC 隧道通过 grpc_pass grpcs:// 重新加密到后端。既享受统一 SSL 终止的便利,又不牺牲 gRPC 协议完整性。

部署后一测——设备空间绑定成功,相册备份正常,文件浏览正常。

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则