虽然JSON配置很强大,但是配置繁琐,不容易理解。在caddy中,最常用的配置caddy的方式还是Caddyfile,这是caddy的配置文件,类似Nginx的config。它通俗易懂、配置简单,容易上手,如果你以前会用nginx,那么上手Caddyfile也会非常容易。

创建一个Caddyfile文件

Caddyfile没什么特殊的,就是一个普通的文本文件,只不过它的名字是Caddyfile,并且没有扩展名。

现在配置一个域名为 localhost 的服务,这样你就可以在浏览器中通过地址 localhost 来访问它。

Caddyfile

1
localhost

就是这么简单,这是最简单的Caddyfile配置。 现在使用 caddy start 命令即可启动,如果Caddyfile在当前目录则不用指定配置文件;如果不再当前目录,则需要使用 --config 参数指定配置文件。

1
➜  ~ caddy start --config ~/Desktop/Caddyfile 

因为默认会启用HTTPS,所以网络服务会在443端口监听。

Hello World

现在如果你访问https://localhost/, 你只能看到一个空白页面,现在我让它显示出一个 Hello World 来。

Caddyfile

1
2
3
localhost

respond "Hello, world!"

现在再运行这个Caddyfile配置,通过浏览器访问,就可以看到Hello World 了。

1
2
➜  ~ curl https://localhost
Hello, world!%    

配置多个Web服务

既然caddy是一个Web服务器,那么就不止可以托管一个Web站点,如果需要托管多个,怎么做呢?

Caddyfile

1
2
3
4
5
6
localhost {
	respond "Hello, world!"
}
localhost:2016 {
	respond "Goodbye, world!"
}

如上示例所以,就定义了两个站点,一个是 localhost ,一个是 localhost:2016 ,启动caddy后,这两个地址都可以访问。 从上面的配置可以看到,要配置多个站点,就需要使用 {} 大括号把每个站点括起来,而只有一个站点的时候,就不需要了。

静态文件服务

还记得第一篇文章 Caddy实战(一)| 托管你的网站,只需一行命令 使用命令行托管一个网站的操作吧,这次我使用Caddyfile达到同样的效果。Caddyfile配置如下所示:

1
2
3
4
www.flysnow.org {
  root * /var/www/mysite
  file_server 
}

就是这么简单,效果和直接使用caddy是一样的。

小结

这一篇主要带你快速的入门Caddyfile,可以使用Caddyfile配置常见的场景,让你对Caddyfile有个了解,下一节将会介绍如何通过API管理caddy。

本文为原创文章,转载注明出处,欢迎扫码关注公众号flysnow_org或者网站asf http://www.flysnow.org/ ,第一时间看后续精彩文章。觉得好的话,请猛击文章右下角「好看」,感谢支持。

扫码关注