91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

比Nginx性能更強的下一代Web服務器

jf_ro2CN3Fa ? 來源:芋道源碼 ? 作者:芋道源碼 ? 2022-11-15 10:18 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

簡介

Caddy 2 是一個強大的、企業(yè)級的、開源的 Web 服務器。是一個 Go 編寫的 Web 服務器,類似于 Nginx,Caddy 提供了更加強大的功能。

88ddf688-648a-11ed-8abf-dac502259ad0.png

支持 HTTP/2 的 Web 服務端。它使用 Golang 標準庫提供 HTTP 功能。Caddy 一個顯著的特性是默認啟用HTTPS。它是第一個無需額外配置即可提供HTTPS 特性的Web 服務器。

  • 官網(wǎng):https://caddyserver.com
  • 文檔:https://caddyserver.com/docs/

基于 Spring Boot + MyBatis Plus + Vue & Element 實現(xiàn)的后臺管理系統(tǒng) + 用戶小程序,支持 RBAC 動態(tài)權(quán)限、多租戶、數(shù)據(jù)權(quán)限、工作流、三方登錄、支付、短信、商城等功能

  • 項目地址:https://github.com/YunaiV/ruoyi-vue-pro
  • 視頻教程:https://doc.iocoder.cn/video/

特性

  • 全自動支持 HTTP/2 協(xié)議,無需配置。
  • 全自動變成 HTTPS 站點,無需任何配置。
  • 合理使用多核
  • 支持 IPv6 環(huán)境
  • 對 WebSockets 有很好的支持
  • 可以自動把 Markdown 轉(zhuǎn)成 HTML
  • Caddy 對 log 格式的定義很容易
  • 易于部署 ,沒有依賴
  • 作為反向代理支持主動和被動健康檢查、負載均衡、斷路、緩存等功能。
  • 支持 Windows、 Linux、Mac 三大主流系統(tǒng)
相較于 Nginx 來說使用 Caddy 的優(yōu)勢如下
88f8f3ca-648a-11ed-8abf-dac502259ad0.png
  • 自動的 HTTPS 證書申請(ACME HTTP/DNS 挑戰(zhàn))
  • 自動證書續(xù)期以及 OCSP stapling 等
  • 更高的安全性包括但不限于 TLS 配置以及內(nèi)存安全等
  • 友好且強大的配置文件支持
  • 支持 API 動態(tài)調(diào)整配置(有木有人可以搞個 Dashboard)
  • 支持 HTTP3(QUIC)
  • 支持動態(tài)后端,例如連接 Consul、作為 k8s ingress 等
  • 后端多種負載策略以及健康檢測等
  • 本身 Go 編寫,高度模塊化的系統(tǒng)方便擴展(CoreDNS 基于 Caddy1 開發(fā))

基于 Spring Cloud Alibaba + Gateway + Nacos + RocketMQ + Vue & Element 實現(xiàn)的后臺管理系統(tǒng) + 用戶小程序,支持 RBAC 動態(tài)權(quán)限、多租戶、數(shù)據(jù)權(quán)限、工作流、三方登錄、支付、短信、商城等功能

  • 項目地址:https://github.com/YunaiV/yudao-cloud
  • 視頻教程:https://doc.iocoder.cn/video/

安裝

下載地址:https://caddyserver.com/download

Fedora/RHEL/CentOS 8
$dnfinstall'dnf-command(copr)'
$dnfcoprenable@caddy/caddy
$dnfinstallcaddy
MacOS
brewinstallcaddy
RHEL/CentOS 7
$yuminstallyum-plugin-copr
$yumcoprenable@caddy/caddy
$yuminstallcaddy
Debian/Ubuntu/Raspbian
$sudoaptinstall-ydebian-keyringdebian-archive-keyringapt-transport-https
$curl-1sLf'https://dl.cloudsmith.io/public/caddy/stable/gpg.key'|sudotee/etc/apt/trusted.gpg.d/caddy-stable.asc
$curl-1sLf'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt'|sudotee/etc/apt/sources.list.d/caddy-stable.list
$sudoaptupdate
$sudoaptinstallcaddy

安裝完成后,在終端命令行下輸入 caddy :

$caddy

Caddyisanextensibleserverplatform.

usage:
caddy[]

commands:
adaptAdaptsaconfigurationtoCaddy'snativeJSON
build-infoPrintsinformationaboutthisbuild
environPrintstheenvironment
file-serverSpinsupaproduction-readyfileserver
fmtFormatsaCaddyfile
hash-passwordHashesapasswordandwritesbase64
helpShowshelpforaCaddysubcommand
list-modulesListstheinstalledCaddymodules
reloadChangestheconfigoftherunningCaddyinstance
reverse-proxyAquickandproduction-readyreverseproxy
runStartstheCaddyprocessandblocksindefinitely
startStartstheCaddyprocessinthebackgroundandthenreturns
stopGracefullystopsastartedCaddyprocess
trustInstallsaCAcertificateintolocaltruststores
untrustUntrustsalocally-trustedCAcertificate
upgradeUpgradeCaddy(EXPERIMENTAL)
validateTestswhetheraconfigurationfileisvalid
versionPrintstheversion

Use'caddyhelp'formoreinformationaboutacommand.

Fulldocumentationisavailableat:
常用命令
$systemctlstart[stop|restart]caddy//啟動服務
$systemctlreloadcaddy//重新加載配置文件
$systemctlstatuscaddy//查看運行狀態(tài)

配置

Caddy2 的配置文件核心采用 json,但是 json 可讀性不強,所以官方維護了一個轉(zhuǎn)換器,抽象出稱之為 Caddyfile 的新配置格式;關(guān)于 Caddyfile 的完整語法請查看官方文檔。文檔地址:https://caddyserver.com/docs/caddyfile

常用配置
站點配置
(site_option){
encodezstdgzip
file_server
handle_errors{
rewrite*/{http.error.status_code}.html
file_server
}
importacme_https
importlog_file
root*/www/{host}
}
多域名配置
地址{
........
}

這個地址支持以下幾種格式

localhost
example.com
:443
http://example.com
localhost:8080
127.0.0.1
[::1]:2015
example.com/foo/*
*.example.com
http://
全局配置選項
{
#開啟所有的調(diào)試輸出
debug
#設定默認的sni
default_snidomain.com
#打開或關(guān)閉管理端口
adminoff
}
錯誤頁面跳轉(zhuǎn)
www.mingongge.com{
root*/web/mingongge.com/
file_server
handle_errors{
rewrite*/{http.error.status_code}.html
file_server
}
}
Log 日志
(log_file){
log{
formatlogfmt
outputfile/var/log/caddy/{host}.access.log{
roll_keep7
}
}
}
Header
www.mingongge.com{
root*/web/mingongge.com/
file_server
headerAccess-Control-Allow-Origin*
headerCache-Controlmax-age=3600
header/css/*Cache-Controlmax-age=604800
}
Cache-Control
(cachecontrol){
header/css/*Cache-Controlmax-age=3600
header/img/*Cache-Controlmax-age=3600
header/js/*Cache-Controlmax-age=3600
}

反向代理

https://www.mingongge.com{
gzip
tlsadmin@mingongge.com
proxy/https://welcome.mingongge.com
}
快速創(chuàng)建一個站點
caddyfile-server--website./index--listen:8088--domainwww.mingongge.com

參數(shù)說明

file-server#這是一個文件服務器
--website#文件服務的根目錄
./index#首頁文件的存儲目錄(如存放index.html)
--listen:8088#定義監(jiān)聽端口
--domainwww.mingongge.com#綁定域名
配置片段

Caddyfile 支持類似代碼中 function 一樣的配置片段,這些配置片段可以在任意位置被 import,同時可以接受參數(shù),以下為配置片斷示例:

#括號內(nèi)為片段名稱,可以自行定義
(TLS){
protocolstls1.2tls1.3
ciphersTLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256
}

#在任意位置可以引用此片段從而達到配置復用
importTLS
配置模塊化

import 指令除了支持引用配置片段以外,還支持引用外部文件,同時支持通配符,有了這個命令以后我們就可以方便的將配置文件進行模塊化處理:

#引用外部的/etc/caddy/*.caddy
import/etc/caddy/*.caddy

模塊化配置實例

Caddyfile

Caddyfile 類似于 nginx 的 nginx.conf 主配置。

(LOG){
log{
formatformatted"[{ts}]{request>remote_addr}{request>proto}{request>method}<-?{status}?->{request>host}{request>uri}{request>headers>User-Agent>[0]}"{
time_format"iso8601"
}
outputfile"{args.0}"{
roll_size100mb
roll_keep3
roll_keep_for7d
}
}
}

(TLS){
protocolstls1.2tls1.3
ciphersTLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256
}

(HSTS){
header/Strict-Transport-Security"max-age=63072000"
}

(ACME_GANDI){
#從環(huán)境變量獲取GANDI_API_TOKEN
dnsgandi{$GANDI_API_TOKEN}
}

#聚合上面的配置片段為新的片段
(COMMON_CONFIG){
#壓縮支持
encodezstdgzip

#TLS配置
tls{
importTLS
importACME_GANDI
}

#HSTS
importHSTS
}

#開啟HTTP3實驗性支持
{
servers:443{
protocol{
experimental_http3
}
}
}

#引入其他具體的站點配置
import/etc/caddy/*.caddy
站點配置
www.mingongge.com{
#重定向到mingongge.com(默認302)
redirhttps://mingongge.com{uri}

#日志
importLOG"/data/logs/mingongge.com.log"

#TLS、HSTS、ACME等通用配置
importCOMMON_CONFIG
}

mingongge.com{
#路由
route/*{
reverse_proxymingongge_com:80
}

#日志
importLOG"/data/logs/mingongge.com.log"

#TLS、HSTS、ACME等通用配置
importCOMMON_CONFIG
}

配置完成后,通過 systemctl start caddy 去啟動 caddy 服務器。每次配置修改后可以通過 systemctl reload caddy 進行配置重載。這些命令的功能與 Nginx 的命令功能基本一樣。

總結(jié)

Caddy 內(nèi)置了豐富的插件,例如 “file_server”、內(nèi)置各種負載均衡策略等,這些插件組合在一起可以實現(xiàn)一些復雜的功能。Caddy 采用 Go 語言編寫,相比較而言(Nginx 通過 Lua 或者 C 開發(fā)插件),對于后期的開發(fā)更容易上手。



審核編輯 :李倩


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • Web
    Web
    +關(guān)注

    關(guān)注

    2

    文章

    1304

    瀏覽量

    74492
  • 服務器
    +關(guān)注

    關(guān)注

    14

    文章

    10256

    瀏覽量

    91521
  • nginx
    +關(guān)注

    關(guān)注

    0

    文章

    186

    瀏覽量

    13124

原文標題:比 Nginx 性能更強的下一代 Web 服務器

文章出處:【微信號:芋道源碼,微信公眾號:芋道源碼】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    零基礎如何用云服務器搭建網(wǎng)站?完整教程

    上提供協(xié)助,幫助快速落地。 第步:理解主要概念? 在動手前,先了解幾個名詞:云服務器是租用的虛擬主機資源;域名是用戶訪問網(wǎng)站的地址;DNS解析把域名指向服務器IP;Web
    的頭像 發(fā)表于 01-29 16:18 ?299次閱讀

    英飛凌下一代電磁閥驅(qū)動評估套件使用指南

    英飛凌下一代電磁閥驅(qū)動評估套件使用指南 、前言 在電子工程師的日常工作中,電磁閥驅(qū)動的評估和開發(fā)是項重要任務。英飛凌推出的
    的頭像 發(fā)表于 12-21 11:30 ?869次閱讀

    Amphenol Aerospace高壓38999連接:滿足下一代飛機電力需求

    Amphenol Aerospace高壓38999連接:滿足下一代飛機電力需求 在飛機電力系統(tǒng)設計中,連接性能至關(guān)重要。隨著飛機技術(shù)的不斷發(fā)展,對連接
    的頭像 發(fā)表于 12-15 11:10 ?567次閱讀

    如何快速在云服務器上部署Web環(huán)境?

    如何快速在云服務器上部署Web環(huán)境
    的頭像 發(fā)表于 10-14 14:16 ?669次閱讀

    適用于下一代 GGE 和 HSPA 手機的多模/多頻段 PAM skyworksinc

    電子發(fā)燒友網(wǎng)為你提供()適用于下一代 GGE 和 HSPA 手機的多模/多頻段 PAM相關(guān)產(chǎn)品參數(shù)、數(shù)據(jù)手冊,更有適用于下一代 GGE 和 HSPA 手機的多模/多頻段 PAM的引腳圖、接線圖、封裝
    發(fā)表于 09-05 18:34
    適用于<b class='flag-5'>下一代</b> GGE 和 HSPA 手機的多模/多頻段 PAM skyworksinc

    Nginx在企業(yè)環(huán)境中的調(diào)優(yōu)策略

    Nginx作為現(xiàn)代互聯(lián)網(wǎng)架構(gòu)中最重要的Web服務器和反向代理服務器,其性能調(diào)優(yōu)對企業(yè)級應用的穩(wěn)定性和效率至關(guān)重要。本指南將從運維實踐角度出發(fā)
    的頭像 發(fā)表于 07-14 11:13 ?638次閱讀

    Nginx和Apache的差異

    Nginx個 輕量級/高性能 的反向代理Web服務器,用于 HTTP、HTTPS、SMTP、POP3 和IMAP 協(xié)議。
    的頭像 發(fā)表于 07-09 09:45 ?687次閱讀

    下一代高速芯片晶體管解制造問題解決了!

    ,10埃)開始直使用到A7。 從這些外壁叉片晶體管的量產(chǎn)中獲得的知識可能有助于下一代互補場效應晶體管(CFET)的生產(chǎn)。 目前,領(lǐng)先的芯片制造商——英特爾、臺積電和三星——正在利用其 18A、N2
    發(fā)表于 06-20 10:40

    Nginx配置終極指南

    Nginx 是開源、高性能、高可靠的 Web 和反向代理服務器,而且支持熱部署,幾乎可以做到 7 * 24 小時不間斷運行,即使運行幾個月也不需要重新啟動,還能在不間斷
    的頭像 發(fā)表于 06-18 15:56 ?1040次閱讀
    <b class='flag-5'>Nginx</b>配置終極指南

    云原生環(huán)境里Nginx的故障排查思路

    本文聚焦于云原生環(huán)境下Nginx的故障排查思路。隨著云原生技術(shù)的廣泛應用,Nginx作為常用的高性能Web服務器和反向代理
    的頭像 發(fā)表于 06-17 13:53 ?983次閱讀
    云原生環(huán)境里<b class='flag-5'>Nginx</b>的故障排查思路

    Nginx基礎安裝與配置教程

    說起Web服務器,大家第反應可能是Apache,但作為個在運維路上摸爬滾打的技術(shù)人,我必須要為Nginx正名
    的頭像 發(fā)表于 06-13 16:13 ?944次閱讀

    如何配置Linux防火墻和Web服務器

    在當今數(shù)字化時代,網(wǎng)絡安全顯得尤為重要。Linux作為種開源操作系統(tǒng),廣泛應用于服務器管理和網(wǎng)絡配置中。本篇文章將詳細介紹如何配置Linux防火墻和Web服務器,確保內(nèi)網(wǎng)與外網(wǎng)的安全
    的頭像 發(fā)表于 05-24 15:26 ?1889次閱讀
    如何配置Linux防火墻和<b class='flag-5'>Web</b><b class='flag-5'>服務器</b>

    Nginx緩存配置詳解

    Nginx個功能強大的 Web 服務器和反向代理服務器,它可以用于實現(xiàn)靜態(tài)內(nèi)容的緩存,緩存可以分為客戶端緩存和
    的頭像 發(fā)表于 05-07 14:03 ?1259次閱讀
    <b class='flag-5'>Nginx</b>緩存配置詳解

    Nginx實戰(zhàn)全攻略

    Nginx個高性能的 HTTP 和反向代理服務器,也是個 IMAP/POP3 代理服務器
    的頭像 發(fā)表于 03-31 10:44 ?4890次閱讀
    <b class='flag-5'>Nginx</b>實戰(zhàn)全攻略

    Ubuntu 系統(tǒng)部署 Caddy Web 服務器全攻略!

    本文將以簡明教程形式,指導您在Ubuntu系統(tǒng)上安裝并運行新一代Web服務器Caddy。相比傳統(tǒng)Nginx與Apache,Caddy憑借兩大核心優(yōu)勢脫穎而出:原生HTTPS自動證書管理
    的頭像 發(fā)表于 03-25 09:19 ?1057次閱讀
    Ubuntu 系統(tǒng)部署 Caddy <b class='flag-5'>Web</b> <b class='flag-5'>服務器</b>全攻略!