Plack :: MiddleWare :: ReverseProxypath.

クライアント向けに対応するようにプロキシされたenvを調整する
今すぐダウンロード

Plack :: MiddleWare :: ReverseProxypath. ランキングとまとめ

広告

  • Rating:
  • ライセンス:
  • Perl Artistic License
  • 価格:
  • FREE
  • 出版社名:
  • Brad Bowman
  • 出版社のWebサイト:
  • http://search.cpan.org/bowmanbs/

Plack :: MiddleWare :: ReverseProxypath. タグ


Plack :: MiddleWare :: ReverseProxypath. 説明

ユースケース:リバースプロキシ/サブ/パス/ http:// 0:5000 /その他/パス/。このミドルウェアは、バックエンドで座っていて、プロキシによって送信されたヘッダーを使用して、バックエンドApp.plack :: MiddeWare :: ReversproxyのPerlモジュールです.PortとScheme.plack :: MiddleWare :: ReverspRoxyPathはパスの処理を追加します。目標は、プロキシバックエンドアプリケーションを再構築してクライアントに直面しているURLを使用できるようにすることです。逆プロキシは、ほとんどの作業と逆Proxypathを行います。内部アプリは単にリダイレクト、セットクッキーなどに$ REQ->基本を使用することができます。リバースプロキシという用語が混乱を招くようになるので、フロントエンドを使用してリバースプロキシ(例えばSQUID)を参照します。クライアントは最初にヒットし、バックエンドでPSGIアプリケーション(例えばStarman)を実行するサーバーを参照するために、PLACK :: MiddleWare :: ReverseProxypathを参照してください。プロキシがないふりをする。これは、プロキシとサーバー全体ではなく、より深いパスだけではない場合に便利です。 Apache用語:ProxyPass / Mirror / Foo / http:// localhost:5000 / bar /それはPlack :: MiddleWare :: ReverseProxy、スキーム、ホスト、ポート環境属性と同等の調整を行います。中ミドルウェアを使う: "Reversproxy"を有効にします。 "ReverspRoxyPath"を有効にします。以下は、ダミーリバースプロキシフロントエンドとバックエンドの両方を使用して、逆ProxyPathを使用して逆方向の例です。 plack_server = starman perl-x -ilib ./lib/plack/middleware/reverseproxypath.pm(asample出力)#!perl -mplack :: runner #line 85 sub mw(); Plack :: Builderを使用してください。 #x-forwarded-script-nameおよびx-traversal-pathヘッダーを送信するために、リバースプロキシ(Perlbal、Narnish、Apache、Squid)#を設定します。 #この例は、Plack :: App :: Proxyを使用して説明します.sub proxy_builder {Plack :: App :: Proxyを必要とします。 #https:// manehost / fepath / from mount "http:// localhost / fepathから/ from" => builder {mw {my($ app、$ env)= @_。 #逆PraStath $ ENV - > {'http_x_forwarded_script_name'} = '/ fepath / from'; $ env - > {'http_x_traversal_path'} = '/ bepath / to'; #逆プロキシのヘッダ(しばしば既に送信されている)$ ENV - > {'http_x_forwarded_host'} = 'maneshost'; #ふりをする.. $ env - > {'http_x_forwarded_port'} = 443; 「MPが必要な場合は「MPが必要です」!$ env - > {'psgi.multiprocess'}!$ env - > {'psgi.multithread'}; $ app - >($ env); ;; Plack :: App :: Proxy-> New(Remote => 'http:// 0:5000 / bepath / to') - > to_app; ;; ;; #あなたのプラックバックエンドで私の$ app = builder {#/ bepath / to / *はプロキシ(直接アクセスすることもできます) "/ bepath / to" => builder {#ベース調整:#1)http:/ / 0:5000 / BEPATH / / X#逆プロキシ修正方式/ host / port "Reversproxy"を有効にします。 #2)https:// maneshost / bepath / to / x#reverseProxypathは新しいヘッダーを使用します#script_nameとpath_infoを修正します。 #3)https:// => echo_base; mount "/ env" => echo_env; ;; mount "/ env" => echo_env; #概要を短くする(ニーズ> 1労働者)Proxy_Builder()を短くするために自分自身へのプロキシ。 ;; #monopsis plumbing:sub echo_base {Plack :: Requestを必要とします。 、、]}} sub mw(){My $ CODE =シフト;サブ{My $ APP = Shift;サブ{$ CODE - >($ APP、@_); }}}}}}}} Plack :: Runner-> New-> Run($ APP); __ end__#__ end__#http:// localhost:5000 / fepath / from / base https:// somehost / fepath / from / base#バックエンドのhttp:// localhost:5000 / bepath / / base http:// localhost:5000 / bepath / / baseproductのホームページ


Plack :: MiddleWare :: ReverseProxypath. 関連ソフトウェア