問題タブ [reverse-proxy]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
caching - Apache Reverse Caching Proxy - キャッシュしないのはなぜですか?
広告グラフィック (GIF、JPEG、SWF) を配信するためのリバース キャッシュ プロキシを設定しようとしています。プロキシは正常に機能しており、オリジン サーバーにリクエストを送信していますが、コンテンツがキャッシュされていない理由がわかりません。私の現在の設定は以下です。目標は、/ca/
URI プレフィックスに一致するすべてのリクエストをキャッシュすることです。配信元サーバーは、クリーン URL、ファイル拡張子なし、max-age=1
配信元サーバー ヘッダーにキャッシュ制御週が設定されたファイルを提供しています。
現在、私が実際に見た唯一のキャッシングは、プロキシ サーバーでアクセスされたローカル ファイルのキャッシングです。オリジン サーバーからコンテンツを取得してキャッシュするために不足しているものを探しています。
mod_cache
コンテンツはディスク上の場所ではなく、オリジンサーバーから取得されるため、キャッシュしないことに関係があるのではないかと思います。
そのプレフィックスに一致するすべてのリクエストを強制的にキャッシュする方法を探しています。
PS私はこの正確な問題を抱えているようです: http://mail-archives.apache.org/mod_mbox/httpd-users/200901.mbox/%3C497F6ED3.7080606@gmail.com%3E。権限を確認し、デバッグ メッセージを調べます…</p>
caching - Nginxをキャッシングリバースプロキシとして設定するにはどうすればよいですか?
最近、Nginxがリバースプロキシ機能にキャッシュを追加したと聞きました。私は周りを見回しましたが、それについて多くの情報を見つけることができませんでした。
Apache / Djangoの前でNginxをキャッシングリバースプロキシとして設定したいと思います。Apacheへの一部(すべてではない)の動的ページに対するNginxプロキシリクエストを行い、生成されたページをキャッシュして、キャッシュからそれらのページに対する後続のリクエストを処理します。
理想的には、2つの方法でキャッシュを無効にします。
- キャッシュされたアイテムに有効期限を設定する
- キャッシュされたアイテムを明示的に無効にします。たとえば、Djangoバックエンドが特定のデータを更新した場合、影響を受けるページのキャッシュを無効にするようにNginxに指示したいと思います
Nginxにそれを行うように設定することは可能ですか?どのように?
certificate - Squid リバース プロキシの新しい証明書
期限切れの証明書を置き換えるために、Squid リバース プロキシで新しい証明書を作成する必要があります。誰も方法を知っていますか?
http - リバース プロキシの背後にある WebDAV
私は2つのサーバーを持っています。Web 上の 1 つのリバース プロキシと、WebDAV を提供するプライベート リンク上の 1 つ。
ブース サーバーは apache httpd v2 です。
私が持っているプロキシで:
私が持っているdavサーバー上:
リバース プロキシには 経由https
でアクセスし、プライベート サーバーには 経由でアクセスしhttp
ます。そして、そこに問題があります!
読み取り専用コマンドは正常に機能します。しかし、何かを動かしたいときは502 Bad gateway
. この理由は、リバース プロキシが拡張された dav 要求内の URL を書き換えていないためです。
ソース URL はヘッダー内にあり、正しく変換されhttp://share.local/file1
ます。宛先 URL は、私が理解できないいくつかの xml フラグメント内にあり、残りますhttps://example.com/file1
:(
Apacheがリクエストを正しく変換できるようにする標準的な方法はありますか?
がんばってくれてありがとう。
php - httpプロキシへのWebインターフェイスを設定しますか?
Webブラウザの設定でIP/ポートを入力しなくても、ユーザーがhttpプロキシサーバー(Squid、Privoxyなど)を経由できるようにする方法が必要です。シンプルなWebインターフェースが使えるといいなと思っていました。
私はこれを想像しています:
- ユーザーは私のサーバー( http://proxy.com )のWebサイトにアクセス
し、フォームにURLを入力します。- ユーザーのブラウザのURLは次のようになります(http://proxy.com/url=URL)
- 今後のリンクへのすべての接続は
、別のポートで実行されているhttpプロキシを介して渡されます。
また、既存のphp /cgiWebプロキシスクリプトは使用したくありません。
私の唯一の理由は、多くのphpインスタンスに接続をプロキシさせるよりも、ネイティブプロキシサーバーを介して接続を再ルーティングする方がはるかに効率的だと感じていることです。これが実際には当てはまらないと思われる場合は、教えてください。
これを行う簡単な方法はありますか?ありがとう!
apache - リバースプロキシモードApacheはバックエンドサーバーからの302応答をインターセプトまたはトラップし、302応答をクライアントに返送せずに内部でリダイレクトします
リバースプロキシモードで、バックエンドサーバーからの302(または30x)応答をインターセプトまたはトラップし、30x応答をクライアントに返送せずに内部でリダイレクトするように、Apacheに指示する方法を知っている人はいますか?最終的に、応答がリダイレクトされるバックエンドサーバーは、外部からアクセスできなくなります(またはApache confにリストされません)。
私の状況:
web_server_Aとweb_server_Bがポート6666と7777でリッスンしています。これらのポートには外部からはアクセスできませんが、内部からはアクセスできます。
最終的にweb_server_Aの動作を変更することはできますが、web_server_Bの動作を変更することはできません。
Apacheは、外部からアクセス可能なポート80/443でリッスンしており、web_server_ {A、B}.example.com宛てのリクエストをweb_server_{A、B}に送信するリバースプロキシとして機能しています。
クライアントはApacheにweb_server_A.example.com/fooを要求します。Apacheはリクエストをweb_server_Aにプロキシします。これにより、いくつかのものが作成され、web_server_B.example.com / bar/secret_tokenを指すHTTP/302応答がApacheに返送されます。Apacheは302応答をクライアントに送り返し、クライアントはApacheにweb_server_B.example.com/bar/secret_tokenのHTTPリクエストを送信します。Apacheはリクエストをweb_server_Bにプロキシし、web_server_Bは何かに応答します(通常は大きなファイルを送り返します)。
私の問題:
クライアントにURL web_server_B.example.com/bar/secret_tokenについて知られたくないので、最終的にはweb_server_Bに外部からアクセスできるようにしたくありません。
web_server_Aはweb_server_Bにリクエストを送信し、302応答を発行せずにweb_server_Bから応答を送り返すことができます。ただし、web_server_Bからの回答が来るまでには時間がかかる場合があり、かなり大きい場合があります。web_server_Aは、リクエストに多くの時間を費やすべきではありません(大きなファイルを処理する機能はありません)。
そこで、「302トラッパー」機能があればいいと思いましたが、これまでのところ、その方法についてWeb上で何も資金を提供していません。何か案が?
python - テンプレート + スクリプティング リバース プロキシ?
アイデアを熟考し、フィードバック/提案を得たかった:
URL 書き換えと nginx で大きな成功を収めたので、次のことを行う、より機能的なリバース プロキシ/ルーターを考えています。
- 正規表現マッチングに基づいてリクエストをハンドラーにマップします (ala Django)
- 特定のリクエストは、単純にバックエンド サーバーにルーティングされます。静的メディア、memcached など
- 他のリクエストは、複数のバックエンド サーバーからデータを取得するテンプレートをレンダリングします。
たとえば、テンプレートは次のもので構成できます。
リバース プロキシは、someserver/somepage および otherserver/otherpage に対して http 要求を行い、結果をテンプレートに取り込みます。
質問:
- そのアイデアは理にかなっていますか、それとも悪いアイデアですか?
- このようなものを実装する既存のパッケージはありますか?
- これを実装するための既存のサーバー+スクリプトはどうですか-たとえば。lighttpd+lua、nginx+??
- nginx+SSIはどうですか?経験/推奨事項があればコメントしてください。
- スクリプト言語+イベントレットのようなものはどうですか?
- ねじれた?
私の好みは、スクリプト用の python と jinja/django スタイルのテンプレートですが、別の方法も受け入れています。