使用群辉进行二级域名转发

使用群辉进行二级域名转发

需求:在同一台电脑上部署了多个服务,但是访问的时候,不希望填写端口

实现方式

一、 frp

官方文档:https://gofrp.org/docs/features/http-https/subdomain/

在多人同时使用一个 frps 时,通过自定义二级域名的方式来使用会更加方便。
通过在 frps 的配置文件中配置 `subdomain_host`,就可以启用该特性。之后在 frpc 的 http、https 类型的代理中可以不配置 `custom_domains`,而是配置一个 subdomain 参数。
只需要将 `*.{subdomain_host}` 解析到 frps 所在服务器。之后用户可以通过 subdomain 自行指定自己的 web 服务所需要使用的二级域名,通过 `{subdomain}.{subdomain_host}` 来访问自己的 web 服务。
```ini
# frps.ini
[common]
subdomain_host = frps.com
```
将泛域名 `*. frps.com将泛域名 `*.frps.com` 解析到 frps 所在服务器的 IP 地址。
```ini
# frpc.ini
[web]
type = http
local_port = 80
subdomain = test
```
frps 和 frpc 都启动成功后,通过 ` test.frps.com` 就可以访问到内网的 web 服务。
**注:如果 frps 配置了 `subdomain_host`,则 `custom_domains` 中不能是属于 `subdomain_host` 的子域名或者泛域名。**
同一个 HTTP 或 HTTPS 类型的代理中 `custom_domains` 和 `subdomain` 可以同时配置。

二、nginx

之前一直使用的frp,但是...后来使用了群辉,因为群辉存在一个默认的nginx且把80和443端口给占用了,再去折腾端口或者启动一个虚拟机不太合适

参考:https://blog.csdn.net/Metropolis_cn/article/details/73613022

不过遇到点问题,群晖在重启nginx的时候,会验证/etc/nginx/nginx.conf是否被修改,因此不能直接修改nginx.conf,仔细阅读nginx.conf的配置文件,找到这么一段配置

    include conf.d/http.*.conf;

后面就简单了,创建文件对应文件/etc/nginx/conf.d/http.abc.com.conf参照连接配置即可

server {
 listen 80;
 listen [::]:80;

 server_name *.abc.com;

 if ($http_host ~* "^(.*?)\.abc\.com$") {    #正则表达式
         set $domain $1;                     #设置变量
 }

    location / {
     if ($domain ~* "git") {
        proxy_pass http://127.0.0.1:1180;
     }

     tcp_nodelay     on;
     proxy_set_header Host            $host;
     proxy_set_header X-Real-IP       $remote_addr;
     proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
     #以上三行,目的是将代理服务器收到的用户的信息传到真实服务器上
     root /var/tmp/nginx/html;
 }
 error_page 403 404 500 502 503 504 /dsm_error_page;
}

三、2023.3.2记录

直接根据域名在/etc/nginx/conf.d/下添加不同的服务即可,不用这么像上面的这么麻烦

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值