当前位置:

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

访客 2024-01-05 282 0

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{
  • outputstdout
  • }
  • handle_path/product*{
  • reverse_proxyhttp://192.168.1.12:7078
  • }
  • }
  • 强调几点:

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

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

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

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

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

    发表评论

    • 评论列表
    还没有人评论,快来抢沙发吧~