收起左侧

关于 HTTPS 反向代理下 FnTermX 无法打开的问题

4
回复
1040
查看
[ 复制链接 ]

1

主题

1

回帖

0

牛值

江湖小虾

2026-1-26 17:05:39 显示全部楼层 阅读模式

最近在使用飞牛 OS 时,我发现其中的 FntermX 终端功能十分实用。我的飞牛 OS 部署在局域网内,通过 Nginx 反向代理访问其 Web 管理页面。然而,在打开 FntermX 终端时,页面一直返回错误代码。

经过一下午的钻研,我终于通过调整 Nginx 配置,实现了通过 HTTPS 代理直接访问 FntermX 终端。问题的关键在于,我在终端设置中采用了二级路径,其中一级路径用于访问飞牛的 Web 管理页面。经分析发现,当通过二级路径访问 FntermX 终端时,后端会同时调用其他一级路径下的二级路径文件资源。由于 Nginx 未配置相应的二级路径资源,从而导致返回 404 状态码。

以下是最终配置成功的 Nginx 内容:

nginx

location /term {
    proxy_pass http://192.168.0.10:5122/;
    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 http;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
}

location /assets {
    proxy_pass http://192.168.0.10:5122/assets;
    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 http;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
}

location /api{
    proxy_pass http://192.168.0.10:5122/api;
    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 http;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
}

image.png

image.png

这个 FntermX 终端 的设置,通过 系统设置-应用-FntermX 终端 打开。

在此将这份 Nginx 配置内容记录下来,供有需要的朋友参考。

收藏
送赞 2
分享

本帖子中包含更多资源

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

x

1

主题

28

回帖

0

牛值

系统先锋体验团🛩️

2026-1-28 10:52:13 显示全部楼层

这个会不会被撞开密码,然后不安全呢?

1

主题

28

回帖

0

牛值

系统先锋体验团🛩️

2026-1-28 10:59:41 显示全部楼层

我用的LUCKY穿透后,还做了第三方QQ验证。感觉安全很多。

1

主题

22

回帖

0

牛值

江湖小虾

2026-3-26 10:01:02 显示全部楼层

image_20260326095838.png

image_20260326095904.png

按楼主的方案进行了反代配置,点开应用正常显示了,但是点击进入“本地终端”时,会出现“Invalid HTTP request received.”的错误

本帖子中包含更多资源

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

x
有一个更简洁的配置方式如下: location / { # 判断主机名,精准匹配nas管理地址 nas.example.com if ($host = nas.example.com) { proxy_pass http://192.168.1.10:5666; break; }  详情 回复
2026-3-27 16:51

1

主题

22

回帖

0

牛值

江湖小虾

2026-3-27 16:51:10 显示全部楼层
[quote][size=2][url=forum.php?mod=redirect&goto=findpost&pid=272818&ptid=52676][color=#999999]Lunfy 发表于 2026-3-26 10:01[/color][/url][/size] 按楼主的方案进行了反代配置,点开应用正常显示了,但是点击进入“本地终端”时,会出现“Invalid HTTP r ...[/quote]

有一个更简洁的配置方式如下:

location / {
    # 判断主机名,精准匹配nas管理地址 nas.example.com
    if ($host = nas.example.com) {
        proxy_pass http://192.168.1.10:5666;
        break;
    }

    # 自定义URL设置为(根据实际情况选择http或者https):https://term.example.com
    # 判断主机名,精准匹配FntermX终端自定义URL:term.example.com
    if ($host = term.example.com) {
        proxy_pass http://192.168.1.10:5122;
        break;
    }

    # 基础转发头(通用)
    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_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
}

这种配置方式缺点是自定义URL直接暴露到外网,解决办法如下:

1、二级域名设定足够复杂,如:qwefskd-jferflaermfsflsadcsd-edsterfercmvcnx.example.com;反正我们不需要记住。外人如果猜不到这个二级域名,也就无法访问到。

2、设置FntermX终端设置足够强的验证密码

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

本版积分规则