请问一个二级域名如何配置可以访问多个 http 服务?

285 天前
 maninnet

我手上只有一个二级域名 sub.abc.com ,但我有一个 alist 和 nas 的 http 服务想通过这个二级域名进行访问,比如 sub.abc.com/alistsub.abc.com/nas 分别访问 alist 和 nas 的管理后台,我尝试通过 nginx 配置 location 的 rewrite 和 sub_filter 都没办法解决,请问有什么解决办法吗?

7190 次点击
所在节点    NGINX
77 条回复
dfdd1811
285 天前
我记得之前我捣鼓 list 的时候也想这样,但是他软件不支持再加后缀。很多软件都需要支持才行。所以我现在起服务要么就直接用端口访问,非要洁癖,就单开个二级域名,申请新证书,反正也是自动续期
phenixc
285 天前
nas 和 alist 使用端口访问,sub.abc.com 指向 lucky666 所在服务器,使用 lucky666 的 web 反向代理让 sub.abc.com/alist 指向 alist 服务所在地址和端口应该可以解决。不过我更偏向于使用 alist.sub.abc.com
lovelylain
285 天前
子路径就这样,要么服务本身支持子路径,要么 sub_filter 替换,为什么会有 sub_filter 这么麻烦的方式,因为没有更好的办法,你都替换了一半而且看到效果了,继续换吧,或者查查服务有没有提供编译或者配置选项支持子路径。
xuanbg
285 天前
只有一个二级域名的话,你应该一开始就该规划好子目录,然后再写代码。不然你怎么配置 nginx 都会有一些无解的问题。
Tink
285 天前
nginx
zwgf
285 天前
用端口
zuotun
285 天前
只能再买几个域名或者用端口号区分,你这样做工作量巨大而且很容易出问题。不是大家没有这种需求,而是子域名又不要多花钱,何必做成 All in one 呢?
当然也有解决方案,配合一些奇技淫巧完全可以实现访问同一个网址展示完全不同的页面,但这样搞你肯定是不打算给其他人用了,这样一来还不如改端口号来的方便实在。
InDom
285 天前
给一个笨笨的方案,但这个方案可能不能做到同时访问。

使用 service worker 技术,拦截 fetch 请求。

fetch 请求增加一个 header 头,指引 nginx 反向代理到哪个服务。

比如你打开 sub.exmaple.com/nas 后 worker 中记录下当前要访问 nas ,然后跳转回 sub.exmaple.com ,worker 中的 fetch 请求时就带上 nas 的标记,nginx 收到请求后只反向代理到 nas 后端。
duanxianze
285 天前
不同的端口反向代理啊
skyadmin
285 天前
买个域名几十块的事情,买个自己独有的,干啥都方便
starck
285 天前
能不能给个*.sub 的记录
hatsuyuki
285 天前
https://freedns.afraid.org/subdomain/

这个网站最多免费提供 5 个二级域名
realpg
285 天前
什么做互联网项目的公司?竟然没有几个十年已备案域名储备?
dream10201
285 天前
买个域名吧,首年几块钱
jslang
285 天前
akabk 是正解,我这边 alist 可以给你参考

nginx.conf
location /alist/ {
proxy_pass http://localhost:5244;
}

docker-compose.yml
alist:
container_name: alist
environment:
TZ: Asia/Shanghai
SITE_URL: https://s.fyi/alist
image: xhofe/alist:latest
ports:
- 5244:5244
cominghome
285 天前
用目录转发首先得你的应用支持,最简单的例子,你的静态资源得使用相对路径而非绝对路径。用不同端口能接受吗?
z7356995
285 天前
6 位数字域名.xyz 一美元一年我买了 10 年也不过 80 元,时间珍贵,能用钱解决,不要浪费时间
sagaxu
285 天前
首次访问 sub.abc.com/xxx 时,把实际路径 xxx 写入 Cookie ,后续请求根据 Cookie 重写路径
ala2008
285 天前
这不是很常见的 nginx 配置吗,转发或重定向
PeiXyJ
285 天前
最烦的就是 前端的页面指向就是 /static/xxxx.jpg 用 nginx 代理基本无效.

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

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

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

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

© 2021 V2EX