国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

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

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

3天內不再提示

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

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

掃碼添加小助手

加入工程師交流群

簡介

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

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

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

  • 官網:https://caddyserver.com
  • 文檔:https://caddyserver.com/docs/

基于 Spring Boot + MyBatis Plus + Vue & Element 實現的后臺管理系統 + 用戶小程序,支持 RBAC 動態權限、多租戶、數據權限、工作流、三方登錄、支付、短信、商城等功能

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

特性

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

基于 Spring Cloud Alibaba + Gateway + Nacos + RocketMQ + Vue & Element 實現的后臺管理系統 + 用戶小程序,支持 RBAC 動態權限、多租戶、數據權限、工作流、三方登錄、支付、短信、商城等功能

  • 項目地址: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//查看運行狀態

配置

Caddy2 的配置文件核心采用 json,但是 json 可讀性不強,所以官方維護了一個轉換器,抽象出稱之為 Caddyfile 的新配置格式;關于 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://
全局配置選項
{
#開啟所有的調試輸出
debug
#設定默認的sni
default_snidomain.com
#打開或關閉管理端口
adminoff
}
錯誤頁面跳轉
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
}
快速創建一個站點
caddyfile-server--website./index--listen:8088--domainwww.mingongge.com

參數說明

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

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

#括號內為片段名稱,可以自行定義
(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){
#從環境變量獲取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 的命令功能基本一樣。

總結

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



審核編輯 :李倩


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

    關注

    2

    文章

    1304

    瀏覽量

    74479
  • 服務器
    +關注

    關注

    14

    文章

    10253

    瀏覽量

    91506
  • nginx
    +關注

    關注

    0

    文章

    186

    瀏覽量

    13118

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

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

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    零基礎如何用云服務器搭建網站?完整教程

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

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

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

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

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

    如何快速在云服務器上部署Web環境?

    如何快速在云服務器上部署Web環境
    的頭像 發表于 10-14 14:16 ?665次閱讀

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

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

    Nginx在企業環境中的調優策略

    Nginx作為現代互聯網架構中最重要的Web服務器和反向代理服務器,其性能調優對企業級應用的穩定性和效率至關重要。本指南將從運維實踐角度出發
    的頭像 發表于 07-14 11:13 ?637次閱讀

    Nginx和Apache的差異

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

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

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

    Nginx配置終極指南

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

    云原生環境里Nginx的故障排查思路

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

    Nginx基礎安裝與配置教程

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

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

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

    Nginx緩存配置詳解

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

    Nginx實戰全攻略

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

    Ubuntu 系統部署 Caddy Web 服務器全攻略!

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