Caddy反向代理转发修改http请求路径

Caddy是个非常不错的开源服务器产品,简单易用,自带ssl。只是没啥详细的中文文档,遇到问题只能看官方文档。

记录一下使用Caddy转发http请求的方法。

问题:将http://192.168.1.10:7077/product/*的请求转发到http://192.168.1.12:7078/*。这里其实是两个需求,一个是转发端口,还有个是去除掉product前缀。感兴趣的可以自己研究一下。

Caddyfile如下:

http://192.168.1.10:7077 {
    log {
        output stdout
    }
    
    handle_path /product* {
        reverse_proxy http://192.168.1.12:7078
    }
}

强调几点:

1. 如果开头不指定http,Caddy默认使用https协议

2. log指令开启日志,output stdout指定将日志输出到标准输出

3. /product*表示匹配所有以/product为前缀的url,包括/product和/product/*。Caddy的[matcher]匹配更偏向正则匹配,跟nginx的语法有差异

4. Caddyfile配置,同一大括号里面的多个directive(指令)并没有顺序之别,可以理解为:是给同一个匹配目标添加了多个特征

5. handle和handle_path的区别是handle_path自动在子指令中增加了一条uri strip_prefix /prefix指令,用于去除前缀

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值