关于 NAS 上使用 NGINX 反向代理的一些问题

133 天前
 sworld233

看到了帖子 https://www.v2ex.com/t/991802 之后,我也想将自己的 nas 只暴露一个端口,但是根据贴内的信息我怎么也完成不了,希望大家能赐教

我的 NAS 上有多个服务,这里例举 memos 和 gitea ,装了 nginx 和 ddns-go ,将自己的域名指向了本机的 IPV6 地址 我最初的设想是这样的

我的域名:5000/memos  --> localhost:30001(Memos 暴露的端口)
我的域名:5000/gitea  --> localhost:30002(Gitea 暴露的端口)

我的 nginx 配置大概是这样

server {
    listen [::]:5000 ipv6only=on;
    server_name memos.sworld.club;
    location /memos/ {
        proxy_pass http://localhost:30001/;
    }
}

我发现这个 memos 应用内部会访问/asserts 这些接口,而不是/memos/asserts ,这样我就无法正确反向代理它们了,我看到有人说应该使用 sub_filter ,但是我并没有成功

后来我换了一个办法,我想要使用多个子域名映射到同一端口,设想是这样的

memos.我的域名:5000  --> localhost:30001(Memos 暴露的端口)
gitea.我的域名:5000  --> localhost:30002(Gitea 暴露的端口)

nginx 配置大概是这样

server {
    listen [::]:5000 ipv6only=on;
    server_name memos.sworld.club;
    location / {
        proxy_pass http://localhost:30001;
    }
}
server {
    listen [::]:5000 ipv6only=on;
    server_name gitea.sworld.club;
    location / {
        proxy_pass http://localhost:30002;
    }
}

但是这样 nginx 会报端口冲突,也还是不行。 我今天折腾这个问题好几个小时,但是仍然没有结果,通过域名访问 NAS 的服务有没有一些最佳实践?恳请大家说说自己的看法

2863 次点击
所在节点    NAS
25 条回复
KIMI360
132 天前
群晖的话直接用内置的反向代理就可以了,可以参考: https://post.smzdm.com/p/awonk4xk/
hi909
132 天前
ikk098
130 天前
用 nginx proxy manager 吧。 简单易上手
genicsoft123
128 天前
@sworld233 我最近测试了几个网络,发现 frp 速度最快,已经在运行测试。tailscale 也不错不过没有 frp 速度快。zerotier 和 tailscale 差不多。我是把局域网的 GPU 映射到外网去用。效果不错。能跑满我的上行带宽
qbaidu
122 天前
location /memos/ {
proxy_pass http://localhost:30001/memos/;
}

第一种要配置的话要这样

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1010494

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX