グローバル オプション ブロック サーバー グローバル構(gòu)成 HTTPS や管理 API などを有効にするかどうかの構(gòu)成に使用できます。 スニペット 再利用可能な構(gòu)成スニペット 定義後、import キーワードを介して參照できます サイト ブロック 単一 Web サイト構(gòu)成 靜的プロキシは file_server を介して構(gòu)成できますおよび reverse_proxy 動的エージェントを構(gòu)成できます。 マッチャー定義 マッチ定義 デフォルトでは、ディレクティブはグローバルな影響を及ぼします。影響力を指定できます コメント コメント サイトアドレスで始まる#記號を使用してください Web サイト アドレス デフォルトでは HTTPS が使用されます。HTTP を有効にする必要がある場合は、 ディレクティブ ## を指定する必要があります。 # ディレクティブ http:// Caddy の強(qiáng)力な機(jī)能の先頭にあるディレクティブ 反向代理 反向代理就是當(dāng)請求訪問你的代理服務(wù)器時,代理服務(wù)器會對你的請求進(jìn)行轉(zhuǎn)發(fā),可以轉(zhuǎn)發(fā)到靜態(tài)的資源路徑上去,也可以轉(zhuǎn)發(fā)到動態(tài)的服務(wù)接口上去。我們以代理域名為例,講解如何進(jìn)行靜態(tài)和動態(tài)代理。
靜態(tài)代理 靜態(tài)代理就是將請求代理到不同的靜態(tài)資源路徑上去,這里我們將對docs.macrozheng.com的請求代理到我的文檔項目中,對mall.macrozheng.com的請求代理到mall的前端項目中。
首先我們修改下本機(jī)的host文件:
192.168.3.106 docs.macrozheng.com 192.168.3.106 mall.macrozheng.com
然后將我們的文檔項目和mall前端項目上傳到Caddy的html目錄中去,并進(jìn)行解壓操作:
修改Caddyfile文件,使用如下配置,修改完成后使用caddy reload命令刷新配置;
http://docs.macrozheng.com {
root * /mydata/caddy/html/docs
file_server browse
}
http://mall.macrozheng.com {
root * /mydata/caddy/html/mall
file_server browse
} 如果你的Caddyfile文件格式不太合格的話,會出現(xiàn)如下警告,直接使用caddy fmt --overwrite格式化并重寫配置即可解決;
通過docs.macrozheng.com即可訪問部署好的文檔項目了:
通過mall.macrozheng.com即可訪問到部署好的前端項目了。
動態(tài)代理 動態(tài)代理就是把代理服務(wù)器的請求轉(zhuǎn)發(fā)到另一個服務(wù)上去,這里我們將把對api.macrozheng.com的請求代理到演示環(huán)境的API服務(wù)上去。
首先我們修改下本機(jī)的host文件,添加如下規(guī)則
192.168.3.106 api.macrozheng.com
修改Caddyfile文件,使用如下配置,修改完成后使用caddy reload命令刷新配置;
http://api.macrozheng.com {
reverse_proxy http://admin-api.macrozheng.com
} 之后通過api.macrozheng.com/swagger-ui.html即可訪問到mall-admin的API文檔頁面了。
文件壓縮 如果我們的服務(wù)器帶寬比較低,網(wǎng)站訪問速度會很慢,這時我們可以通過讓Caddy開啟Gzip壓縮來提高網(wǎng)站的訪問速度。這里我們以mall的前端項目為例來演示下它的提速效果。
我們需要修改Caddyfile文件,使用encode指令開啟Gzip壓縮,修改完成后使用caddy reload命令刷新配置;
http://mall.macrozheng.com {
root * /mydata/caddy/html/mall
encode {
gzip
}
file_server browse
} 有個比較大的JS文件壓縮前是1.7M;
壓縮后為544K,訪問速度也有很大提示;
另外我們可以看下響應(yīng)信息,如果有Content-Encoding: gzip這個響應(yīng)頭表明Gzip壓縮已經(jīng)啟用了。
地址重寫 有的時候我們的網(wǎng)站更換了域名,但還有用戶在使用老的域名訪問,這時可以通過Caddy的地址重寫功能來讓用戶跳轉(zhuǎn)到新的域名進(jìn)行訪問。
我們需要修改Caddyfile文件,使用redir指令重寫地址,修改完成后使用caddy reload命令刷新配置;
http://docs.macrozheng.com {
redir http://www.macrozheng.com
} 此時訪問舊域名docs.macrozheng.com會直接跳轉(zhuǎn)到www.macrozheng.com去。
按目錄劃分 有時候我們需要使用同一個域名來訪問不同的前端項目,這時候就需要通過子目錄來區(qū)分前端項目了。
比如說我們需要按以下路徑來訪問各個前端項目;
www.macrozheng.com #訪問文檔項目 www.macrozheng.com/admin #訪問后臺項目 www.macrozheng.com/app #訪問移動端項目
我們需要修改Caddyfile文件,使用route指令定義路由,修改完成后使用caddy reload命令刷新配置。
http://www.macrozheng.com {
route /admin/* {
uri strip_prefix /admin
file_server {
root /mydata/caddy/html/admin
}
}
route /app/* {
uri strip_prefix /app
file_server {
root /mydata/caddy/html/app
}
}
file_server * {
root /mydata/caddy/html/www
}
} HTTPS Caddy能自動支持HTTPS,無需手動配置證書,這就是之前我們在配置域名時需要使用http://開頭的原因,要想使用Caddy默認(rèn)的HTTPS功能,按如下步驟操作即可。
首先我們需要修改域名的DNS解析,直接在購買域名的網(wǎng)站上設(shè)置即可,這里以docs.macrozheng.com域名為例;
請使用以下命令確認(rèn)DNS解析記錄是否正確,注意所配置的服務(wù)器的80和443端口需要在外網(wǎng)中可以正常訪問:
curl "https://cloudflare-dns.com/dns-query?name=docs.macrozheng.com&type=A" \
-H "accept: application/dns-json" 修改Caddyfile配置文件,進(jìn)行如下配置;
docs.macrozheng.com {
root * /mydata/caddy/html/docs
file_server browse
} 然后使用caddy run命令啟動Caddy服務(wù)器即可,是不是非常方便!
caddy run Docker支持 當(dāng)然Caddy也是支持使用Docker進(jìn)行安裝使用的,其使用和直接在CentOS上安裝基本一致。
首先使用如下命令下載Caddy的Docker鏡像;
docker pull caddy 然后在/mydata/caddy/目錄下創(chuàng)建Caddyfile配置文件,文件內(nèi)容如下;
http://192.168.3.105:80
respond "Hello, world!" 之后使用如下命令啟動caddy服務(wù),這里將宿主機(jī)上的Caddyfile配置文件、Caddy的數(shù)據(jù)目錄和網(wǎng)站目錄掛載到了容器中;
docker run -p 80:80 -p 443:443 --name caddy \
-v /mydata/caddy/Caddyfile:/etc/caddy/Caddyfile \
-v /mydata/caddy/data:/data \
-v /mydata/caddy/html:/usr/share/caddy \
-d caddy 之后使用docker exec進(jìn)入caddy容器內(nèi)部執(zhí)行命令;
docker exec -it caddy /bin/sh 輸入Caddy命令即可操作,之后的操作就和我們直接在CentOS上安裝一樣了。
以上がNginx Webサーバーキャディの使用方法の詳細(xì)內(nèi)容です。詳細(xì)については、PHP 中國語 Web サイトの他の関連記事を參照してください。
このウェブサイトの聲明
この記事の內(nèi)容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰屬します。このサイトは、それに相當(dāng)する法的責(zé)任を負(fù)いません。盜作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡(luò)ください。
Nginx vs. Apache:Webサーバーの比較分析
Apr 21, 2025 am 12:08 AM
NGINXは、高い並行接続の処理に適していますが、Apacheは複雑な構(gòu)成とモジュール拡張が必要な??シナリオにより適しています。 1.Nginxは、高性能と低リソース消費(fèi)で知られており、高い並行性に適しています。 2. Apacheは、その安定性とリッチモジュール拡張機(jī)能で知られています。これは、複雑な構(gòu)成ニーズに適しています。
NginxとApache:重要な違??いを理解する
Apr 26, 2025 am 12:01 AM
NginxとApacheにはそれぞれ獨(dú)自の利點(diǎn)と欠點(diǎn)があり、選択は特定のニーズに基づいている必要があります。 1.Nginxは、非同期の非ブロッキングアーキテクチャのため、高い並行性シナリオに適しています。 2。Apacheは、モジュラー設(shè)計のため、複雑な構(gòu)成を必要とする低変動シナリオに適しています。
nginxをインストールした後、構(gòu)成ファイルパスと初期設(shè)定
May 16, 2025 pm 10:54 PM
Nginxの構(gòu)成ファイルパスと初期設(shè)定を理解することは、Webサーバーの最適化と管理における最初のステップであるため、非常に重要です。 1)構(gòu)成ファイルパスは通常/etc/nginx/nginx.confです。構(gòu)文は、Nginx-Tコマンドを使用して見つけるとテストできます。 2)初期設(shè)定には、グローバル設(shè)定(ユーザー、Worker_Processesなど)およびHTTP設(shè)定(include、log_formatなど)が含まれます。これらの設(shè)定により、要件に応じてカスタマイズと拡張機(jī)能が可能になります。構(gòu)成が誤っていると、パフォーマンスの問題やセキュリティの脆弱性が生じる可能性があります。
Linuxのユーザーリソースを制限する方法は? ulimitを構(gòu)成する方法は?
May 29, 2025 pm 11:09 PM
Linuxシステムは、リソースの過度の使用を防ぐために、ULIMITコマンドを介してユーザーリソースを制限します。 1.ulimitは、ファイル記述子(-n)、メモリサイズ(-v)、スレッドカウント(-u)などの數(shù)を制限できるビルトインシェルコマンドであり、ソフト制限(現(xiàn)在の有効値)とハードリミット(最大上限)に分割されます。 2。Ulimit-N2048などの一時的な変更には、Ulimitコマンドを直接使用しますが、現(xiàn)在のセッションでのみ有効です。 3.永続的な効果を得るには、/etc/security/limits.confを変更し、PAM構(gòu)成ファイルを変更し、SessionRequiredPam_limits.soを追加する必要があります。 4. SystemDサービスは、ユニットファイルにLIMを設(shè)定する必要があります
Debian Nginx構(gòu)成スキルは何ですか?
May 29, 2025 pm 11:06 PM
DebianシステムでNginxを構(gòu)成する場合、以下はいくつかの実用的なヒントです。構(gòu)成ファイルの基本構(gòu)造グローバル設(shè)定:NGINXサービス全體に影響を與える行動パラメーターを定義します。イベント処理パーツ:Nginxがネットワーク接続をどのように扱うかを決定することは、パフォーマンスを改善するための重要な構(gòu)成です。 HTTPサービスパーツ:HTTPサービスに関連する多數(shù)の設(shè)定が含まれており、複數(shù)のサーバーとロケーションブロックを埋め込むことができます。コア構(gòu)成オプションworker_connections:各ワーカースレッドが処理できる接続の最大數(shù)を定義します。通常は1024に設(shè)定されています。Multi_accept:マルチ接続受信モードをアクティブにし、同時処理の能力を高めます。 s
Nginxの目的:Webコンテンツなどの提供
May 08, 2025 am 12:07 AM
NginxServesWebContentAndActSasaReverseProxy、loadbalancer、andmore.1)itefficientlyServestaticContentlikehtmlandimages.2)ItfunctionsasareSareProxyandloadbalancer、distributing trafficacrosservers.3)
nginxトラブルシューティング:一般的なエラーの診斷と解決
May 05, 2025 am 12:09 AM
nginxの一般的なエラーの診斷とソリューションには、次のものが含まれます。1。ログファイルの表示、2。構(gòu)成ファイルの調(diào)整、3。パフォーマンスを最適化します。ログを分析し、タイムアウト設(shè)定を調(diào)整し、キャッシュとロードバランスの最適化により、404、502、504などのエラーを効果的に解決して、ウェブサイトの安定性とパフォーマンスを向上させることができます。
See all articles