高效文件共享:使用Caddy打造快速、安全的File Server
文章目录
前言
在跨平台文件同步利器:使用Caddy搭建WebDav实现多设备间的无缝文件共中讲了如何使用 caddy 搭建 WebDav 服务,今天就来学一下如何在 caddy 中搭建静态文件服务器。
静态服务器
搭建一个静态服务器需要使用到 file_server 这个插件,这个插件是内置的,只要安装好了 caddy 就能够直接使用。
来编写 Caddyfile 文件
|
|
编写好了使用 caddy start --config ./Caddyfile 来启动 caddy
然后在浏览器中输入 127.0.0.1 就能访问到 ~/www/index.html 的文件了
显示文件列表
在上一步中我们实现了一个简单的静态文件服务器,默认会访问根目录的 index.html 文件,如果根目录下没有这个文件那么访问会报错,会提示找不到这个文件。
这时候我希望可以查看这个文件夹下的文件列表,而不是报错,这时候就需要通过添加 browse 参数来显示文件列表,如下所示
|
|
这时候 www 目录下没有 index.html 就会把目录下的所有文件给列出来了。
增加密码验证
上面两步实现了一个静态文件服务器和展示文件列表,但是这样不安全。
所以希望能够加入账号和密码进行验证,只有验证成功才能访问。
这时候可以通过配置 basicauth 这个插件来达到安全访问的目的。如下所示
|
|
其中密码需要使用 caddy hash-password username 来生成,把生成好的密码替换掉 Caddyfile 中的 pwd 。
接着重新运行 caddy ,然后访问就会提示你需要输入密码了。
简单的命令行操作
有时候只是简单的提供一下文件访问的功能,不想写 Caddyfile 可以通过命令行来快速提供服务
caddy file-server会以当前目录作为站点的根目录运行静态服务器caddy file-server --listen :8080指定运行在8080端口caddy file-server --browse支持显示文件列表caddy file-server --root ~/www指定网站的根目录
总结
本文讲了如何使用 caddy 搭建一个静态服务器,并且配置显示文件列表、密码验证和命令行的简单操作。
可以看到在 caddy 中搭建一个静态服务器还是非常简单方便的。