後端マシンの構成が高く、フロントエンドマシン(回線)の速度が速い場合、私たちは当然、リバースプロキシを使用してユーザーのアクセス速度を向上させることを考えます。
本記事では WordPress を例に、設定時の注意事項を記録します:スタイルシートが無効
、バックエンドにアクセスできない
、リダイレクト回数が多すぎる
といった問題が発生した場合、以下の内容を参考にしてください!
準備#
- 速いサーバー A
- バックエンドのソースサーバー B
まず、有効な nginx リバースプロキシには、ソースがドメイン名で正常にアクセスできる必要があります。例えば、私たちが設定しようとしているwww.laplace.cc
です。
もしwww.laplace.cc
にアクセスできる場合、それはBマシン
に解決されていることを示します。私たちがやるべきことは、www.laplace.cc
をAマシン
に解決させることです。これは矛盾しているように思えますが、次のようにします:
Bマシン
で別のドメイン名をバインド#
例えば mirror.laplace.cc
Aマシン
でターゲットドメイン名をバインド#
例えばwww.laplace.cc
、その後 nginx のリバースプロキシファイルをmirror.laplace.cc
に指向させます。
小結#
- バックエンドのウェブサイトは
IP:ポート
であってはいけません; - バックエンドは SSL を有効にする必要があります;
- WordPress のバックエンド固定リンクはターゲットドメイン(例えば
www.laplace.cc
)に設定する必要があります; - バックエンドで別のドメイン名をバインドし、フロントエンドがそれをリバースプロキシします;
- フロントエンドとバックエンドは同じ SSL 証明書を使用すれば大丈夫です!
- リバースプロキシのルールでは、ソースが https を含む必要があります(例えば
https://mirror.laplace.cc
) - 以下に設定の例を示します
詳細設定:#
バックエンド B マシンの設定#
- ターゲットドメイン名 と任意のドメイン名をバインドして解決します
例:
www.laplace.cc
laplace.cc
mirror.laplace.cc
-
SSL を設定します(
www.laplace.cc
またはワイルドカード) -
WordPress のリンクリライトルールを設定します(
rewrite
)
WordPress の例:
location /
{
try_files $uri $uri/ /index.php?$args;
}
rewrite /wp-admin$ $scheme://$host$uri/ permanent;
フロントエンド A マシンの設定#
- ターゲットドメイン名をバインドして解決します
www.laplace.cc
laplace.cc
- リバースプロキシを有効にし、
https://mirror.laplace.cc
を指向します
例:
#PROXY-START/
location ^~ /
{
proxy_pass https://de-mirror.laplace.cc;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
proxy_http_version 1.1;
# proxy_hide_header Upgrade;
#Persistent connection related configuration
add_header X-Cache $upstream_cache_status;
#Set Nginx Cache
set $static_filepC4FuOQB 0;
if ( $uri ~* "\.(gif|png|jpg|css|js|woff|woff2)$" )
{
set $static_filepC4FuOQB 1;
expires 1m;
}
if ( $static_filepC4FuOQB = 0 )
{
add_header Cache-Control no-cache;
}
}
#PROXY-END/
- SSL を設定します(
www.laplace.cc
またはワイルドカード)