Maktub_Wiki Maktub_Wiki
主站 (opens new window)
  • 服务搭建
  • 网络服务
  • 开源框架
  • 操作系统
  • iOS/MacOS
  • 算法导论(Python)
  • Leetcode
  • 线性代数
主站 (opens new window)
  • 服务搭建
  • 网络服务
  • 开源框架
  • 操作系统
  • iOS/MacOS
  • 算法导论(Python)
  • Leetcode
  • 线性代数
  • Node.js

    • 脚本
  • Git

    • Github Actions
  • Caddy

    • 基础配置
      • 多端口
      • 取消缓存
      • 添加token验证
      • 添加basicauth验证(网页访问输入账号密码)
      • 禁止GET请求
        • CEL表达式匹配
        • 移除path前缀
    • abort应用
    • Caddy加速Docker
    • Caddy加速OpenAi api
  • V2ray

    • 入口分流
  • Realm

    • 多端口转发
  • Docker

    • 配置
  • NextCloud
  • Hexo
  • vuepress-theme-vdoing
  • 开源框架
  • Caddy
Maktub_小明
2023-11-11
目录

基础配置

# 多端口

# :80 :81 多端口
example.com:80 :81 {
    root * /usr/share/caddy/
    file_server
}

# 取消缓存

example.com {

    #修改header取消缓存
    handle {
	        header Cache-Control "no-cache, no-store, must-revalidate"
	}

    root * /usr/share/caddy/
    file_server
}

# 添加token验证

  1. 修改配置
example.com {
    #添加pw参数判断
    @jiami {
            query pw=abcdefg
    }

    root @jiami /usr/share/caddy/
    file_server
}
  1. 访问
http://example.com?pw=abcdefg

# 添加basicauth验证(网页访问输入账号密码)

  1. 生成密钥
caddy hash-password --plaintext abc123

#输出
$2a$14$J8U4Tf1gxx1ErgadUM6trOm3vQvBLZ236J8KTwJ1Hwnc09cRx90B2
  1. 修改配置(用户:test, 密码:abc123)
example.com {
    basicauth * {
        test $2a$14$J8U4Tf1gxx1ErgadUM6trOm3vQvBLZ236J8KTwJ1Hwnc09cRx90B2
    }
    root * /usr/share/caddy/
    file_server
}

# 禁止GET请求

example.com {
  @oneapi {
    not method GET
  }
  reverse_proxy @oneapi localhost:3000
  @root {
    method GET
  }
  abort @root 
}

# CEL表达式匹配

example.com {
  @oneapi {
    not method GET
  }
  reverse_proxy @oneapi localhost:3000
  # 匹配"GET"请求,"/login"和"/api/*"路径
  @root {
    expression `method('GET') || path('/login') || path('/api/*')`
  }
  abort @root 
}

# 移除path前缀

example.com {
  handle /sub/* {
    uri strip_prefix /sub
  }
}
上次更新: 2025/03/22, 03:52:10
Github Actions
abort应用

← Github Actions abort应用→

Theme by Vdoing | Copyright © 2021-2025 Maktub_小明 | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式