Caddy网页服务器简单部署实践

简介:

Caddy Server是一个用golang写的优秀web server,国内用户相对偏少,但我非常喜欢这个东西,所以来做个简易的手册。
它有许多nginx和apache没有的功能,不仅具有特色而且非常实用,比如简洁的conf,http/2,markdown渲染等等
要说它的缺点,就是效率不如前两者。

本文会以下几块方面来介绍此服务器

  • caddy安装及配置文件基本写法
  • 基本组成模块
  • 传统php+mysql建站
  • caddy特色markdown建站
  • 反向代理引入更多后端系统

1:Caddy的安装及配置文件基本写法

caddy的安装,就是从caddy的官网下载:https://caddyserver.com/download 想要什么模块就尽情点上吧2333
如果没有官网列表上设备或是有特殊需求的同学,可以参考无闻菊苣的文章自行构建可执行文件:https://wuwen.org/2015/11/13/caddy-in-action.html

PS:解压时请把压缩包放在一个新文件夹后再解压

然后执行 ./caddy 这时候访问localhost:2015就可以测试是否运行起来了,至于持久化运行,有多种方法实现,

candyserver下载下来的安装包里已经包含各系统启动文件

博主使用的是使用screen来守护,当然还有更专业的软件实现,比如supservisor

caddy的conf写法有好多种,首先你要在caddy的可执行文件的同目录创建一个名叫Caddyfile的文件,或者在启动时加入路径./caddy -conf="/path/to/Caddyfile"
接下来是几种caddy的conf的写法,简直辣眼睛

本地访问80:

:80
AI 代码解读

单网站:(它会帮您签好let's encrypt证书并且强制定向到https)

example.com
root /var/www/html
//更多模块
AI 代码解读

多网站:

example.com {
  gzip
  root /var/www/htm/
  //更多模块
}
AI 代码解读

2:常用基本组成模块

均写入到conf站点配置中

1.log日志

log /var/www/log/example.log
AI 代码解读

2.目录访问

browse
AI 代码解读

3.gzip压缩

gzip
AI 代码解读

4.自主ssl证书

tls /path/ssl/example.com.crt /path/ssl/example.com.key
AI 代码解读

5.git拉取功能(3600秒为间隔时间)

git https://github.com/user/project.git /var/www/html/git/ {
  interval 3600
}
AI 代码解读

6.访问口令认证(用户emiria,密码abc123)

basicauth / emiria abc123
AI 代码解读

7.cors跨域(下载时记得勾上)

cors / {  
    origin            https://alleysakura.com
    origin            http://alleysakura.pw https://alleysakura.pw
    methods           POST,PUT
    allow_credentials false
    max_age           3600
    allowed_headers   X-Custom-Header,X-Foobar
    exposed_headers   X-Something-Special,SomethingElse
}
AI 代码解读

8.IP屏蔽(下载时记得勾上)

ipfilter / {  
    rule       block
    ip         212.10.15.0-255 202.10.15.0-10 59.43.247.103
    blockpage  /var/www/html/403.html
}
AI 代码解读

9.跳转功能(目录重写功能也类似)

redir http://example.com{url}
AI 代码解读

而且不像nginx进行www重定向那么麻烦,把域名原域名(不限协议)写上,大括号里加上这个就可以,简直太赞了

10.自定义错误页面

errors {
    404 404.html
    500 /var/www/html/500.html
}
AI 代码解读

3:传统php+mysql建站

包管理器安装mysql+php,然后添加

fastcgi / 127.0.0.1:9000 php
AI 代码解读

4:caddy特色markdown建站

具体官方wiki上有示例,功能非常强大,这是一个博主弄的示例站 https://caddy.rd.md

5:反向代理引入更多后端系统

引入反向代理,只需一行

proxy / localhost:4000
AI 代码解读

负载均衡也是类似配置的23333

proxy / 10.10.201.222:80 10.10.201.221:80 {
        policy round_robin
    }
AI 代码解读

当然caddyserver还有许多不常用的,但是非常好玩的组件,大家可以去官网看看文档,博主也将继续探索~(> y <)

目录
打赏
0
0
0
2
3
分享
相关文章
DeepSeek服务器繁忙解决方法:使用阿里云一键部署DeepSeek个人网站!
通过阿里云一键部署DeepSeek个人网站,解决服务器繁忙问题。学生用户可领取300元代金券实现0成本部署,普通用户则可用99元/年的服务器。教程涵盖从选择套餐、设置密码到获取百炼API-KEY的全流程,助您快速搭建专属大模型主页,体验DeepSeek、Qwen-max、Llama等多款模型,无需代码,最快5分钟完成部署。支持绑定个人域名,共享亲友使用,日均成本仅约1元。
100 10
Vue项目部署:如何打包并上传至服务器进行部署?
以上就是Vue项目打包及部署的方法,希望对你有所帮助。描述中可能会有一些小疏漏,但基本流程应该没有问题。记住要根据你的实际情况调整对应的目录路径和服务器IP地址等信息。此外,实际操作时可能会遇到各种问题,解决问题的能力是每一位开发者必备的技能。祝你部署顺利!
91 17
一键部署OpenWebUI+Ollama到阿里云ECS,轻松运行DeepSeek!(保姆级教程)
在当今数据驱动的时代,快速部署和管理大模型成为企业的关键需求。阿里云提供了一键部署OpenWebUI+Ollama的便捷方案,支持本地大模型运行和管理。用户也可以选择连接阿里云百炼的在线模型。
一键部署OpenWebUI+Ollama到阿里云ECS,轻松运行DeepSeek!(保姆级教程)
阿里云出手了,DeepSeek服务器拒绝繁忙,免费部署DeepSeek模型671B满血版
阿里云推出免费部署DeepSeek模型671B满血版服务,通过百炼大模型平台,用户无需编码,最快5分钟、最低0元即可完成部署。平台提供100万免费Token,支持DeepSeek-R1和DeepSeek-V3等多款模型调用,有效解决服务器繁忙问题。新手零基础也能轻松上手,享受高效稳定的API调用和自动弹性扩展功能。教程涵盖开通服务、获取API-KEY及配置Chatbox客户端等步骤,详细指引助您快速实现DeepSeek自由。
246 18
【已解决】Matomo本地SMTP配置可以发邮件,但部署到阿里云ECS就发不了邮件
在阿里云ECS上使用Matomo和PHPMailer发送邮件时遇到问题,邮件无法发出且接口调用Pending。经过排查,发现是ECS安全组未开放25/465端口,导致SMTP请求无法正常通信。解决方法为在安全组中配置并开放25/465端口,从而恢复邮件发送功能。
Linux服务器部署docker windows
在当今软件开发中,Docker成为流行的虚拟化技术,支持在Linux服务器上运行Windows容器。流程包括:1) 安装Docker;2) 配置支持Windows容器;3) 获取Windows镜像;4) 运行Windows容器;5) 验证容器状态。通过这些步骤,你可以在Linux环境中顺利部署和管理Windows应用,提高开发和运维效率。
104 1
基于阿里云Serverless Kubernetes(ASK)的无服务器架构设计与实践
无服务器架构(Serverless Architecture)在云原生技术中备受关注,开发者只需专注于业务逻辑,无需管理服务器。阿里云Serverless Kubernetes(ASK)是基于Kubernetes的托管服务,提供极致弹性和按需付费能力。本文深入探讨如何使用ASK设计和实现无服务器架构,涵盖事件驱动、自动扩展、无状态设计、监控与日志及成本优化等方面,并通过图片处理服务案例展示具体实践,帮助构建高效可靠的无服务器应用。
基于ECS部署DeepSeek个人专属AI网站
本方案介绍了如何基于云服务器ECS集成百炼API和Open WebUI服务,一键部署体验DeepSeek个人专属AI网站。用户不仅可以以极低的成本,拥有个人专属的AI网站,进行稳定的AI对话,还能够切换DeepSeek-V3、DeepSeek-R1、Qwen-max等模型进行体验。同时Open WebUI还具备开源能力,支持定制工具的开发。您还可以创建其他子账号,将您的专属AI网站分享给他人使用。
Docker——阿里云服务器使用Docker部署python项目全程小记
本文记录了我在阿里云服务器上使用Docker部署python项目(flask为例)的全过程,在这里记录和分享一下,希望可以给大家提供一些参考。
100 0
使用域名访问部署在ECS上的网站
本文为您介绍如何为网站配置域名并为域名配置HTTPS证书。

热门文章

最新文章