讲师中心 微信公众号
AI工具推荐 视频效率加速

Linux如何安装配置Caddy_Linux Caddy安装配置指南

老辰大大_3444

老辰大大_3444

发布时间:2026-04-02 18:27:34

|

787人浏览过

|

来源于php中文网

原创

Caddy在Linux上安装极快,配置仅需一个Caddyfile,反向代理localhost:8301三行即可,HTTPS自动生效,但权限、端口、证书路径三点最易出错。

linux如何安装配置caddy_linux caddy安装配置指南

直接说结论:Caddy 在 Linux 上安装极快,配置核心就一个 Caddyfile,反向代理 localhost:8301 三行能搞定,HTTPS 自动生效——但权限、端口、证书路径这三点最容易卡住。

怎么装 Caddy(Ubuntu/Debian/CentOS 通用)

别用老旧的 curl https://getcaddy.com | bash,它已弃用且不兼容 Caddy 2.9+。现在官方主推包管理器安装:

  • Ubuntu/Debian:sudo apt install debian-keyring debian-archive-keyring apt-transport-https → 导入密钥和源 → sudo apt update && sudo apt install caddy
  • CentOS/RHEL 8+:sudo dnf copr enable @caddy/caddy && sudo dnf install caddy
  • 验证:caddy version 输出带 v2.9.x 或更高即成功

注意:安装后 caddy 二进制默认在 /usr/bin/caddy,服务用户是 caddy(非 root),所以后续所有配置文件和证书目录必须让该用户可读写。

为什么 reverse_proxy localhost:8301 启不来

常见报错是 HTTP 502 Bad Gateway 或日志里出现 dial tcp 127.0.0.1:8301: connect: connection refused,本质不是 Caddy 配错了,而是目标服务没起来或网络不通:

  • 先手动确认:curl -v http://localhost:8301/health 能通才继续;不通就查你自己的服务是否监听 127.0.0.1:8301(而非 127.0.0.1:8301 或 0.0.0.0:8301)
  • reverse_proxy 默认只转发 HTTP,如果你的服务是 HTTPS,请写成 reverse_proxy https://localhost:8301,并加 transport http { tls insecure_skip_verify }(仅测试用)
  • 若目标服务绑定了 127.0.0.1,Caddy 用 localhost 能通;但某些容器环境里 localhost 指向容器自身,此时得换 host.docker.internal 或宿主机 IP

配置 Caddyfile 的最小可行写法

不要一上来就抄复杂模板。针对“把本地 localhost:8301 暴露给公网”这个最常用场景,/etc/caddy/Caddyfile 只需这样:

yourdomain.com {
    reverse_proxy localhost:8301
}

说明:

  • 域名必须已 DNS 解析到服务器 IP,否则 Caddy 申请 Let’s Encrypt 证书会失败,回退到 HTTP 模式(日志提示 no certificate available)
  • 想同时支持 HTTP 和 HTTPS?不用额外配——Caddy 默认 80→443 重定向,且自动申请证书存到 /var/lib/caddy/.local/share/caddy/certificates/acme-v02.api.letsencrypt.org-directory/
  • 如果只是临时调试,不想绑域名,用 :80 或 :8000 监听:
    :8000 {
        reverse_proxy localhost:8301
    }
    注意:非特权端口(>1024)无需 setcap,省心

启动失败常见原因和修复动作

执行 sudo systemctl start caddy 报 failed to load initial config 或服务立即退出,优先查这三项:

  • sudo caddy validate --config /etc/caddy/Caddyfile:语法校验,错一个空格都报错
  • sudo chown -R caddy:root /etc/caddy /var/lib/caddy:Caddy 运行用户是 caddy,它必须对配置目录和证书目录有读写权;/etc/ssl/caddy 已废弃,新版证书全在 /var/lib/caddy
  • sudo setcap 'cap_net_bind_service=+ep' /usr/bin/caddy:只有监听 80/443 才需要。不加这句又硬要绑 80 端口,就会报 bind: permission denied

真正容易被忽略的是:Caddy 的证书缓存和 DNS 解析依赖系统时间。如果服务器时间偏差 >5 分钟(常见于虚拟机或未启用 NTP),Let’s Encrypt 会拒绝签发,且错误日志里不直接提示时间问题——务必先 sudo timedatectl set-ntp true。

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门AI工具

更多
二狗PPT
二狗PPT Hot

一款AI演示文稿工具,主要用于专为中式职场打造的AI PPT生成工具,适合需要提升相关任务效率的用户。

SkildArt
SkildArt Hot

SkildArt是一款AI文本写作工具,一站式 AI 视觉创作平台。

LibLibAI
LibLibAI Hot

一款AI视频创作工具,主要用于国内领先的AI创意平台,以海量模型、低门槛操作与“创作-分享-商业化”生态,让小白与专业创作者都能高效实现图文乃至视频创意表达,适合需要提升相关任务效率的用户。

Lovart
Lovart Hot

一款面向视觉设计创作的AI设计平台,可通过智能体和画布工作流辅助制作海报、Logo、网页、PPT及其他视觉内容。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

PixPix
PixPix Hot

PixPix是一款面向电商视觉生产的AI商品图生成工具。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

咔片AIPPT

一款在线AI演示文稿制作工具,可根据主题和内容需求辅助生成PPT结构与页面,提高演示材料制作效率。

相关专题

更多
504 gateway timeout怎么解决
504 gateway timeout怎么解决

504 gateway timeout的解决办法:1、检查服务器负载;2、优化查询和代码;3、增加超时限制;4、检查代理服务器;5、检查网络连接;6、使用负载均衡;7、监控和日志;8、故障排除;9、增加缓存;10、分析请求。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

754

2023.11.27

default gateway怎么配置
default gateway怎么配置

配置default gateway的步骤:1、了解网络环境;2、获取路由器IP地址;3、登录路由器管理界面;4、找到并配置WAN口设置;5、配置默认网关;6、保存设置并退出;7、检查网络连接是否正常。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

357

2023.12.07

curl_exec
curl_exec

curl_exec函数是PHP cURL函数列表中的一种,它的功能是执行一个cURL会话。给大家总结了一下php curl_exec函数的一些用法实例,这个函数应该在初始化一个cURL会话并且全部的选项都被设置后被调用。他的返回值成功时返回TRUE, 或者在失败时返回FALSE。

3483

2023.06.14

linux常见下载安装工具
linux常见下载安装工具

linux常见下载安装工具有APT、YUM、DNF、Snapcraft、Flatpak、AppImage、Wget、Curl等。想了解更多linux常见下载安装工具相关内容,可以阅读本专题下面的文章。

775

2023.10.30

k8s和docker区别
k8s和docker区别

k8s和docker区别有抽象层次不同、管理范围不同、功能不同、应用程序生命周期管理不同、缩放能力不同、高可用性等等区别。本专题为大家提供k8s和docker区别相关的各种文章、以及下载和课程。

685

2023.07.24

docker进入容器的方法有哪些
docker进入容器的方法有哪些

docker进入容器的方法:1. Docker exec;2. Docker attach;3. Docker run --interactive --tty;4. Docker ps -a;5. 使用 Docker Compose。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

5059

2024.04.08

docker容器无法访问外部网络怎么办
docker容器无法访问外部网络怎么办

docker 容器无法访问外部网络的原因和解决方法:配置 nat 端口映射以将容器端口映射到主机端口。根据主机兼容性选择正确的网络驱动(如 host 或 overlay)。允许容器端口通过主机的防火墙。配置容器的正确 dns 服务器。选择正确的容器网络模式。排除主机网络问题,如防火墙或连接问题。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

6017

2024.04.08

docker镜像有什么用
docker镜像有什么用

docker 镜像是预构建的软件组件,用途广泛,包括:应用程序部署:简化部署,提高移植性。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2293

2024.04.08

FrankenPHP集成Laravel详细教程
FrankenPHP集成Laravel详细教程

本专题提供FrankenPHP集成Laravel的详细配置指南,全面解析运行原理、开发环境搭建、Caddyfile配置、Octane工作模式、数据库连接、队列任务、定时任务和生产环境优化,解决部署过程中常见的报错与兼容性问题。

40

2026.10.08

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
热门推荐
/
最新课程
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn