如果要架網頁伺服器 (Web Server) 大家第一個想到的可能是用 Apache 或近年來竄升的 Nginx,我並不是要說這兩個不好,實際上它們有更多細項可以設定,功能也非常強大,但要講便利性是永遠比不上 Caddy 的。Google 搜尋引擎的演算法會優先收錄 HTTPS 網站,換句話說現在的網站最好都要加上 SSL 憑證,而用 Caddy 來架站的話會內建這個功能,不需要任何的設定,它會自動幫你用 Certbot 跟 Let's Encrypt 發放憑證,等於只要網站一上線就自動會開啟 HTTPS。而且在其他方面的功能也都能滿足大多數使用者,如果還在考慮要用什麼架站,不妨試試看 Caddy,它會方便的超乎想像。
curl https://getcaddy.com | bash -s personal
不像 Apache 和 Nginx,Caddy 並沒有所謂的全預設定檔,你可以隨便在你想要的路徑建立一個「Caddyfile」然後就用這個檔案的設定運行 Caddy Server。
yourdomain.com { # 填寫網域才會自動產生 SSL 憑證,localhost 就只會有 HTTP
root /home/www # 網站根目錄
gzip # 網頁壓縮
header /assets { # 加入檔頭,指定 assets 路徑下
Cache-Control "max-age=604800" # 控制瀏覽器快取,壽命一週
}
}
proxy /api localhost:9005 # /api 的請求直接跳轉到本機 Port 9005
proxy / web1.local:80 web2.local:90 web3.local:100
caddy -conf 路徑/Caddyfile
Caddy
官方網站 : https://caddyserver.com
GitHub : https://github.com/mholt/caddy
在官網下載頁可以自行選擇系統平台、插件 (非必要) 和憑證 (個人憑證是免費的),之後建議使用下方的 Bash 直接下載安裝。
不像 Apache 和 Nginx,Caddy 並沒有所謂的全預設定檔,你可以隨便在你想要的路徑建立一個「Caddyfile」然後就用這個檔案的設定運行 Caddy Server。
root /home/www # 網站根目錄
gzip # 網頁壓縮
header /assets { # 加入檔頭,指定 assets 路徑下
Cache-Control "max-age=604800" # 控制瀏覽器快取,壽命一週
}
}
這是一個最標準的網頁伺服器設定範本,在官網可以看到其實根本只需要一行就能讓網頁成功上線,但還是建議加入 gzip 網頁壓縮、以及瀏覽器快取的部分。
建立 Proxy 也很簡單,只要一行就完成了。
拿來做負載均衡也是可以。
建立完 Caddyfile 後就可以使用 -conf 參數指定檔案的位置然後運行伺服器了。
留言
張貼留言