导读 Caddy Web 服务器是一个开源的、支持 HTTP/2 的 Web 服务器,使用 Go 语言编写。Caddy 最显着的功能之一是自动为托管网站启用 TLS。Caddy 自动从 Let's Encrypt 获取和更新 TLS 证书。Caddy 也可以配置为反向代理服务器。

在本文中,将在 CentOS 8 中安装 Caddy Web 服务器并在 Caddy 上配置 HTTP网站。
Caddy有一下功能:

  • 支持 HTTP/1.1 和 HTTP/2
  • 自动配置HTTPS
  • 支持虚拟主机
  • IPv4和IPv6
  • 反向代理
  • 带健康检查的负载平衡
  • GZip压缩
环境信息

系统:Centos8

主机名: caddy.example.com

IP地址:192.168.43.131

安装Caddy Web服务器

使用下面命令安装caddy:

[root@caddy ~]# yum -y install 'dnf-command(copr)'
[root@caddy ~]# yum copr enable @caddy/caddy
[root@caddy ~]# yum -y install caddy


找到 Caddy Web 服务器的安装目录:

[root@caddy ~]# whereis caddy
caddy: /usr/bin/caddy /etc/caddy /usr/share/caddy

为 Caddy Web 服务器创建目录结构

下面为Caddy服务创建存放证书的目录:

[root@caddy ~]# mkdir /etc/ssl/caddy
[root@caddy ~]# chown -R caddy:root /etc/ssl/caddy/
[root@caddy ~]# chmod o-rwx /etc/ssl/caddy/
启用caddy服务
[root@caddy ~]# systemctl enable caddy
Created symlink /etc/systemd/system/multi-user.target.wants/caddy.service → /usr/lib/systemd/system/caddy.service.
[root@caddy ~]# systemctl start caddy


在浏览器输入服务器ip地址,可访问默Caddy的默认页面。

在 Caddyfile 中创建一个服务器配置

在Caddyfile文件中创建一个简单的服务器配置:

[root@caddy ~]# vim /etc/caddy/Caddyfile 
:80 {
# Set this path to your site's directory.
root * /var/www/html

# Enable the static file server.
file_server

gzip
# Another common task is to set up a reverse proxy:
# reverse_proxy localhost:8080

# Or serve a PHP site through php-fpm:
# php_fastcgi localhost:9000
}

[root@caddy html]# echo "<h1>Hello World</h1>" > /var/www/html/index.html


重启一下caddy服务:

[root@localhost ~]# systemctl restart caddy

访问测试一下:


防火墙开启http:

[root@localhost ~]# firewall-cmd --permanent --add-service=http
success
[root@localhost ~]# firewall-cmd --reload
success
总结

如我们已经在 CentOS 7 上成功安装了 Caddy Web 服务器,并使用 Caddy 发布了 HTTP 网站。

本文原创地址:https://www.linuxprobe.com/centos8-caddy-server.html编辑:逄增宝,审核员:逄增宝