Last active
April 25, 2019 03:52
-
-
Save sitsh/ae9fdc01ea77245e7aabac339290d248 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Caddy Server | |
> 官网 https://caddyserver.com/ | |
## Caddy 是用Go 写的一个webServer | |
* 集成 Let's Encrypt 自动签发证书 | |
* 内置 支持Http/2 | |
* 内置 支持 TLS 1.3 | |
* 配置简单容易上手 | |
## Caddy 的授权模式 | |
在 github 作者源码上编译版本是 免费的 | |
> https://github.com/mholt/caddy | |
在下面 官网 通过在线自动编译 出来的 caddy 版本 个人使用免费 商用需要订阅收费 | |
> https://caddyserver.com/download | |
## 下面示例 使用 Caddy 1.0 windows 版本 反向代理 .net core 2.2 kestrel webapps | |
先从 [caddy-releases](https://github.com/mholt/caddy/releases) 下载windows 编译版本二进制文件 | |
![](https://www.yycaf.xyz/wp-content/uploads/2019/04/caddy2.png) | |
解压缩到 本地目录 | |
新建一个 website目录 存放 Caddyfile 配置文件 | |
这里 比如 是这样的目录结构 | |
> E:\website\hangfire.18080\Caddyfile | |
> E:\caddy_v1.0.0_windows_amd64\caddy.exe | |
运行 CMD | |
```bash | |
E:\caddy_v1.0.0_windows_amd64\caddy.exe -conf E:\website\hangfire.18080\Caddyfile | |
``` | |
示例 Caddyfile 配置文件 具体更详细的看官方 文档 | |
```bash | |
yourdomain:18080 //主机地址 | |
tls off //关闭 证书 自动申请 自动申请需要 80 443 端口开放 | |
basicauth /hangfire user pwd //配置 简单登陆验证 | |
proxy / localhost:5100 //反代 本地 kestrel webapps | |
``` | |
这样 一个 Caddy 网站示例 已经能正常运行了。 | |
## 配置守护进程 | |
因为 Caddy 并没有提供 windows下的服务启动方案 这里 我们通过 [nssm](https://nssm.cc/) 这个工具 实现服务的安装 | |
首先到官网下载 [nssm-2.24-101-g897c7ad.zip](https://nssm.cc/ci/nssm-2.24-101-g897c7ad.zip) | |
把对应版本的 nssm.exe 复制到随意一个目录(我这里把他放到 Caddy.exe 同一目录下) | |
运行 CMD | |
切换到 nssm.exe 目录 | |
```bash | |
nssm install [<servicename>] | |
nssm edit <servicename> | |
``` | |
![](https://www.yycaf.xyz/wp-content/uploads/2019/04/caddy1.png) | |
运行上面的目录 会弹出 ui 配置界面 把 caddy 的运行参数 配置添入后就能在 windows 服务中 看见你安装的服务了 然后我们配置 延迟启动 这样 如果机器重启 或者服务崩溃 就有守护进程帮你自动重启服务了。 | |
![](https://www.yycaf.xyz/wp-content/uploads/2019/04/caddy3.png) | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment