nginx小技巧-动态域名

栏目: 服务器 · Nginx · 发布时间: 7年前

内容简介:如果公司有微信开发需求的话,得有备案了的域名和80端口员工开发调试是个问题,如果每次都找运维修改,维护,会被K的。交换机设置DMZ到一台固定服务器,在上面部署nginx/openresty

如果公司有微信开发需求的话,得有备案了的域名和80端口

员工开发调试是个问题,如果每次都找运维修改,维护,会被K的。

交换机设置DMZ到一台固定服务器,在上面部署nginx/openresty

可以gitlab(svn)+jenkins/ansible等运维方式实现每次修改配置文件后,提交到gitlab触发CI/CD推送到nginx服务器,执行reload

当然变通的也有,比如,openresty+lua订阅redis,发现变更后,读取 redis 的配置,rewrite到本地配置文件然后reload,但是总归是比较笨重的

下面说的是通过 server_name 设置通配符来实现动态域名的方案

server {
    listen 443 http2 ssl;
    listen 80;
    server_name  ~(?<h>.+)_(?<a>\d+)_(?<b>\d+).domain.com;
    location / {
        //proxy settings ...
        proxy_pass http://192.168.$a.$b;
    }
}
复制代码

使用方法

curl http[s]://abc_1_1.domain.com
复制代码

等于

curl -H"abc_1_1.domain.com" http[s]://192.168.1.1
复制代码

为啥用 _ 分隔,而不是用 . 分隔成多级域名,是因为Let's Encrypt的通配符是同级通配符,比如 *.domain.com 只支持 a.domian.com 这种, a.b.domain.com 是无效的,如果不需要https访问(小程序需要https)的话,则可以自行修改成 . 分隔

注意,此方案会存在一定的安全隐患,比如,ip爆破(可以设置白名单访问,basic auth,限制动态ip范围).

好处是维护简单(新增域名,更改域名->ip映射,修改配置,采集数据,打印日志等)

本文只是其中反向代理中的一种,类似的反代方案还有frp和ngrok,还可以用dns(bind,dnsmasq).


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

文本上的算法——深入浅出自然语言处理

文本上的算法——深入浅出自然语言处理

路彦雄 / 人民邮电出版社 / 2018-3-1 / 69.00元

本书结合作者多年学习和从事自然语言处理相关工作的经验,力图用生动形象的方式深入浅出地介绍自然语言处理的理论、方法和技术。本书抛弃掉繁琐的证明,提取出算法的核心,帮助读者尽快地掌握自然语言处理所必备的知识和技能。本书主要分两大部分。第一部分是理论篇,包含前3章内容,主要介绍一些基础的数学知识、优化理论知识和一些机器学习的相关知识。第二部分是应用篇,包含第4章到第8章,分别针对计算性能、文本处理的术语......一起来看看 《文本上的算法——深入浅出自然语言处理》 这本书的介绍吧!

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具