從 Windows 遷移到 Ubuntu 終極指南
Caddy 是一個功能強大的開源 Web 服務器,用 Go 編寫,可用于在生產環境中托管 Web 應用程序。Caddy 具有內置的自動 TLS 證書更新、OSCP 裝訂、靜態文件服務、反向代理、Kubernetes 入口等等。Caddy 可以作為獨立的 Web 服務器、應用服務器甚至在容器中運行。
在本教程中,我將引導您完成在 Ubuntu Server 22.04 上安裝 Caddy 的步驟,以及如何創建一個簡單的靜態站點。
你需要什么
要啟動并運行 Caddy,您需要一個 Ubuntu Server 22.04 實例和一個具有 sudo 權限的用戶。準備好這兩件事后,就可以開始安裝了。
如何安裝 Caddy
登錄到您的 Ubuntu Server 實例并添加必要的依賴項:
linuxmi@linuxmi:~/www.linuxmi.com$ sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https -y
linuxmi@linuxmi:~/www.linuxmi.com$ curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg
使用以下命令創建存儲庫文件:
linuxmi@linuxmi:~/www.linuxmi.com$ curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.list
更新apt:
linuxmi@linuxmi:~/www.linuxmi.com$ sudo apt update
最后,使用以下命令安裝 Caddy:
linuxmi@linuxmi:~/www.linuxmi.com$ sudo apt install caddy -y
使用以下命令啟動并啟用 Caddy 服務:
linuxmi@linuxmi:~/www.linuxmi.com$ sudo systemctl enable --now caddy
您現在應該能夠將瀏覽器指向 http://SERVER(??SERVER?
?托管服務器的 IP 地址或域名)并看到默認的 Caddy 歡迎頁面(圖 1)。
圖1:Ubuntu Server 22.04 上的 Caddy 歡迎頁面由。
如何創建您的第一個 Caddy 站點
開箱即用的 Caddy 文檔根目錄是 /usr/share/caddy,但我們希望將其更改為更標準的目錄。在我們配置 Caddy 之前,使用以下命令創建新的文檔根目錄:
linuxmi@linuxmi:~/www.linuxmi.com$ sudo mkdir -p /var/ww/html
接下來,讓我們創建一個基本的靜態站點文件:
linuxmi@linuxmi:~/www.linuxmi.com$ sudo nano /var/www/html/index.hml
在該文件中,粘貼以下內容:
<html>
<head>
<title>Hello, Linux迷 www.linuxmi.com</title>
</head>
<body>
<h1 style="font-family: sans-serif">Hello, Linux迷 www.linuxmi.com, 來自 Caddy Web 服務器!</h1>
</body>
</html>
保存并關閉文件。
使用以下命令打開 Caddy 配置文件:
sudo nano /etc/caddy/Caddyfile
在該文件的頂部附近,你會發現以下部分:
root * /usr/share/caddy
更改為
root * /var/www/html
保存并關閉文件。
使用以下命令重新加載 Caddy 配置:
linuxmi@linuxmi:~/www.linuxmi.com$ sudo systemctl reload caddy
將您的 Web 瀏覽器指向 http://SERVER(??SERVER?
?托管服務器的 IP 地址或域名),您應該會看到我們的新歡迎消息(圖 2)
圖2:我們新的 Caddy 歡迎頁面向。
Caddy 為靜態網站準備了另一個有趣的技巧。讓我們創建另一個頁面,該頁面將打印出 Hello, TechRepublic 消息,然后使用 curl 將其上傳到 Caddy 服務器。
使用以下命令創建一個新文件:
linuxmi@linuxmi:~/www.linuxmi.com$ nano caddy.json
在該文件中,粘貼以下內容:
{
"apps": {
"http": {
"servers": {
"example": {
"listen": [":2022"],
"routes": [
{
"handle": [{
"handler": "static_response",
"body": "Hello, LinuxMi www.linuxmi.com"
}]
}
]
}
}
}
}
}
保存并關閉文件。
使用以下命令將我們的 caddy.json 文件上傳到 Caddy 服務器:
linuxmi@linuxmi:~/www.linuxmi.com$ curl localhost:2019/load -X POST -H "Content-Type: application/json" -d @caddy.json
上傳應該立即發生。完成后,將您的瀏覽器指向 http://SERVER:2022(??SERVER?
?您的托管服務器的 IP 地址或域名),您應該會看到 Hello, LinuxMi www.linuxmi.com 信息(圖 3)。
圖3:我們的新靜態站點通過 curl 推送到服務器。
恭喜,您現在已經啟動并運行了輕量級、閃電般快速的 Caddy Web 服務器。稍后我們將返回到這一點,以了解更多利用此平臺的方法。