私は通常、Tomcatや他のアプリケーションのリバースプロキシとしてnginxを使用しています。実際、nginxはフォワードプロキシもサポートしています。 いわゆるフォワード プロキシとは、イントラネット ユーザーがゲートウェイを介して外部リソースにアクセスすることです。つまり、コンピューターがインターネットを閲覧しているとき、ブラウザーは http プロキシ アドレスを介してインターネットにアクセスするように設定されます。 リバース プロキシとは、外部ユーザーがゲートウェイを介してイントラネット リソースにアクセスすることです。簡単に言えば、Web サイトはイントラネットのポート 8080 で実行され、他のユーザーはポート 80 を介してアクセスできます。 http プロキシ設定 # フォワードプロキシインターネットアクセスサーバー { 聞く 38080; # ドメイン名リゾルバ 8.8.8.8 を解決します。 位置 / { proxy_pass $scheme://$http_host$request_uri; } } ブラウザでプロキシ IP とポートを設定し、http://www.ip138.com にアクセスすると、IP が変更され、プロキシが有効になっていることがわかります。 ただし、httpsウェブサイトを開くことはできません。これは、ネイティブnginxがhttpフォワードプロキシのみをサポートしているためです。nginxのhttpsフォワードプロキシをサポートするには、ngx_http_proxy_connect_moduleパッチ+ sslモジュールサポートをインストールします。 httpsプロキシモジュールを追加する ここで nginx を再コンパイルする必要があります。現在の nginx のバージョンとコンパイル オプションを確認し、公式 Web サイトにアクセスして、再コンパイル用の同じバージョンの nginx ソース コードをダウンロードする必要があります。 nginx の sbin ディレクトリに nginx の sbin ディレクトリを作成します。 http://nginx.org/download/nginx-1.15.12.tar.gz をダウンロードしてください tar -zxvf nginx-1.15.12.tar.gz モジュール ngx_http_proxy_connect_module をダウンロード git クローン https://github.com/chobits/ngx_http_proxy_connect_module パッチを適用し、nginx ソース コードを変更します。この手順は非常に重要です。そうしないと、後続の make が成功しなくなります。 パッチ -d /root/nginx-1.15.12/ -p 1 < /root/ngx_http_proxy_connect_module/patch/proxy_connect_rewrite 元の設定の後にモジュールを追加し、make後にインストールしないように注意してください。 /root/nginx-1.15.12/ をコピーします ./configure --with-http_stub_status_module --with-http_ssl_module --with-file-aio --with-http_realip_module --add-module=/root/ngx_http_proxy_connect_module/ 作る mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak cp /root/nginx-1.15.12/objs/nginx /usr/local/nginx/sbin/ 設定ファイルを以下のように変更し、サービスを開始します。 # フォワードプロキシインターネットアクセスサーバー { 聞く 38080; # ドメイン名リゾルバ 8.8.8.8 を解決します。 # ngx_http_proxy_connect_module プロキシ接続; プロキシ接続許可 443 563; proxy_connect_connect_timeout 10秒; proxy_connect_read_timeout 10秒; proxy_connect_send_timeout 10秒; 位置 / { proxy_pass $scheme://$http_host$request_uri; } } 要約する プロキシはあまり安定していないようで、特に https ウェブサイトでは開けないことがあります。海外のウェブサイトを訪問するときにはこれを行わないでください。これは、nginx のフォワード プロキシ機能に慣れるためのものです。 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
序文ほとんどの人は、システム ディスク ストレージが少ないときにこの操作を実行するか、Linux シ...
この記事では、参考までにシンプルなHTMLショッピング数量アプレットを紹介します。具体的な内容は次の...
序文プロジェクト内のパズルゲーム(デジタル華容路とも呼ばれる)を再構築するのに 2 日かかりました。...
この記事では、MySQL を使用してデータを Excel にエクスポートする方法について説明します。...
目次1. 資源と建設1.1 クリエイターリソースファイルの基本1.2 リソースの構築2. アセットバ...
インターネットで3レベルリンクを検索したところ、すべてオプションで書かれていました。突然、別の方法で...
最近、Rails 経由で「utf8」でエンコードされた UTF-8 文字列を MariaDB に保存...
VM Ware 仮想マシン CentOS の時刻は、次の図に示すように、現地時間と一致しません。おそ...
CSS の位置属性は要素の配置タイプを指定し、上、下、左、右を使用して要素を具体的に配置します...
今日、フラッシュ広告のコードを書いていたとき、フラッシュに付属するリンクはポップアップ広告と間違われ...
MySQL データベースがエラー 1045 (28000): ユーザー 'ODBC'...
3つの仮想マシン132、133、134を群がらせる1. クラスターを初期化し、自分自身をクラスターに...
幅と高さを直接使用することはできません。 display:block; または display:in...
MySQLは私がとても気に入っているデータベースです。今日はWindows 8システムでインストール...
React で国際化を実現するにはどうすればよいでしょうか? react-intlプラグインは、Re...