リバースプロキシについて
Nginxのproxy_passディレクティブを使えば
サイトのURLはそのままで違うURLのサイトを表示することができます
- 画像のファイルパスはS3(AWS)から取ってきたい
- 顧客が作成したドメインで自社のサービスを提供したい
といったケースにおすすめです
このようにブラウザとWebサーバとの間に入ってURLの転送を行う仕組みをリバースプロキシと言います
URLはそのままで別のサーバに転送する
以下の通り、test-1.comにアクセスしたらsample-site.comに転送してURLはそのままでページを表示します
sample-site.comの画面(例の猫さん
Nginxの設定
1 2 3 4 5 6 7 8 |
server { listen 80; server_name test-1.com; access_log /var/log/nginx/test-proxy.log; location / { proxy_pass http://sample-site.com; } } |
"proxy_pass http://sample-site.com;"の箇所がリバースプロキシの設定です
locationディレクティブでルート以下のURLのすべてに対して sample-site.comに転送するようになってます
test-1.comにアクセス
ブラウザのアドレスバーのところに注目
test-1.comで先程のsample-site.comのページが表示されてるのを確認できました
懸念事項
- HTTPS通信をするとどうなるか
- AWSのELB配下でオートスケールしたサービスには正しくアクセスできるか
ココらへんは別途調査必要だけど一旦ここまで
nginx実践入門
nginxを現場で活用するための知識を、実践的なノウハウを交えて解説した書籍です。
nginxのインストール方法や基本的な設定方法からはじめ、nginxを利用した「静的コンテンツ配信サーバ」「HTTPSサーバ」「Webアプリケーションサーバ」「大規模コンテンツ配信システム」の構築方法をそれぞれ詳しく紹介しています。後半ではnginxサーバのモニタリングやログの収集、そして軽量スクリプト言語Luaでnginxを拡張する方法について解説しているので、nginxをこれから使う方はもちろん、さらに活用したい方にもお勧めです。
nginxを現場で活用するための知識を、実践的なノウハウを交えて解説した書籍です。
nginxのインストール方法や基本的な設定方法からはじめ、nginxを利用した「静的コンテンツ配信サーバ」「HTTPSサーバ」「Webアプリケーションサーバ」「大規模コンテンツ配信システム」の構築方法をそれぞれ詳しく紹介しています。後半ではnginxサーバのモニタリングやログの収集、そして軽量スクリプト言語Luaでnginxを拡張する方法について解説しているので、nginxをこれから使う方はもちろん、さらに活用したい方にもお勧めです。