リクエストロジック
OpenSSLをインストールするダウンロード
証明書を生成するコマンドラインを使用してディレクトリをランダムに開き、次のコマンドを使用して証明書を生成します。 # 秘密鍵を作成# ファイル名は test と自由に付けることができます。このコマンドは rsa パスワードを 2 回設定するように要求します。パスワードは後で必要になるので覚えておいてください。コマンドを実行すると、現在のディレクトリに test.key ファイルが生成されます openssl genrsa -des3 -out test.key 1024 # csr 証明書を作成します。ここで使用する test.key は、前のコマンドで生成されたものです。このコマンドを実行した後、一連の情報を入力する必要があります。入力する最も重要な情報は Common Name です。ここで入力するドメイン名は、https を使用してアクセスするドメイン名です。たとえば、localhost と入力しました。残りの内容はお好みに応じて入力してください。上記の手順を完了すると、sslフォルダにtest.csrとtest.keyの2つのファイルが表示されます。 openssl req -new -key test.key -out test.csr # パスワードを削除します # SSL サポート付きの Nginx をロードし、上記の秘密キーを使用する場合は、必要なパスワードを削除します。そうしないと、nginx を起動するときにパスワードを入力する必要があります。 # test.key をコピーして、test.copy.key に名前を変更します # コマンドラインで以下のコマンドを実行してパスワードを削除します (このとき、上記の秘密鍵の作成時に入力したパスワードを入力する必要があります)。 openssl rsa -in テスト.コピー.キー -out テスト.キー # CRT 証明書を生成します。証明書の生成が完了しました。 ssl フォルダーに合計 4 つのファイルが生成されていることがわかりました。次に、https サーバーを構成するときに、test.crt と test.key の 2 つのファイルを使用する必要があります。 openssl x509 -req -days 365 -in test.csr -signkey test.key -out test.crt nginxをダウンロードしてインストールし、nginxの設定を変更します生成された #ユーザーnobody; ワーカープロセス 1; #error_log ログ/error.log; #error_log ログ/error.log 通知; #error_log ログ/error.log 情報; #pid ログ/nginx.pid; イベント { ワーカー接続 1024; } http { mime.types を含めます。 デフォルトタイプ アプリケーション/オクテットストリーム; #log_format main '$remote_addr - $remote_user [$time_local] "$request" ' # '$status $body_bytes_sent "$http_referer" ' # '"$http_user_agent" "$http_x_forwarded_for"'; #access_log ログ/access.log メイン; ファイル送信オン; #tcp_nopush オン; #キープアライブタイムアウト 0; キープアライブタイムアウト65; #gzip オン; サーバー{ 聞く 80; server_name ローカルホスト; #文字セット koi8-r; #access_log ログ/host.access.log メイン; 位置 / { ルート D:/local-site; インデックス index.html index.htm; } #エラーページ 404 /404.html; # サーバーのエラーページを静的ページ /50x.html にリダイレクトします # エラーページ 500 502 503 504 /50x.html; 場所 = /50x.html { ルートhtml; } # PHP スクリプトを 127.0.0.1:80 で listen している Apache にプロキシします # #場所 ~ \.php$ { # プロキシパス http://127.0.0.1; #} # PHP スクリプトを 127.0.0.1:9000 で待機している FastCGI サーバーに渡します # #場所 ~ \.php$ { #ルートhtml; #fastcgi_pass 127.0.0.1:9000; # fastcgi_index インデックス.php; # fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; #fastcgi_params を含めます。 #} # Apacheのドキュメントルートが.htaccessファイルへのアクセスを拒否する # nginxのものと一致します # #場所 ~ /\.ht { # すべて拒否; #} } サーバー{ 聞く 8086; ローカルホスト:8086 をリッスンします。 server_name ローカルホスト; gzip オン; gzip_バッファ 4 16k; gzip_comp_レベル6; gzip_vary オン; gzip_types text/plain text/css application/json application/x-javascript application/javascript text/xml application/xml application/xml+rss text/javascript; 位置 / { ルート D:/local-site/good-test; インデックス index.html index.htm; } 場所 ^~/api/ { ^~/api/(.*)$ /$1 を書き換えて、break; proxy_pass http://localhost:8080/; #プロキシIP:ポート} } # ここでは、HTTPS サーバー構成、リバース プロキシ、およびクロスドメイン サポートが使用されます。nginx とバックエンド サービスに注意してください。クロスドメインは nginx でのみ設定する必要があります。バックエンド サービスに対してクロスドメインを有効にしないでください。両側でクロスドメインを有効にすると、問題が発生します。# サーバー{ 443 ssl を聴く; server_name ローカルホスト; ssl_certificate テスト.crt; ssl_certificate_key テストキー; ssl_session_cache 共有:SSL:1m; ssl_session_timeout 5分; ssl_ciphers HIGH:!aNULL:!MD5; ssl_prefer_server_ciphers をオン; # 位置 / { #ルートhtml; # インデックス index.html index.htm; # } 位置 / { # 書き換え ^~/api/(.*)$ /$1 break; # add_header アクセス制御許可オリジン *; # クライアント要求メソッドを許可する add_header 'Access-Control-Allow-Methods' 'GET、POST、OPTIONS、DELETE、PUT'; # クライアントによって送信されたリクエスト ヘッダーを許可する add_header 'Access-Control-Allow-Headers' 'Origin、x-requested-with、Content-Type、Accept、Authorization'; # クライアントがクッキーを送信できるようにする add_header 'Access-Control-Allow-Credentials' 'true'; # クライアントが応答ヘッダーにアクセスできるようにする add_header 'Access-Control-Expose-Headers' 'Cache-Control、Content-Language、Content-Type、Expires、Last-Modified、Pragma'; プロキシパス http://10.114.119.61:8080; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Port $server_port; proxy_set_header ホスト $host; proxy_set_header X-Real-IP $remote_addr; } } サーバー{ 8443 ssl を聴く; server_name ローカルホスト; ssl_certificate テスト.crt; ssl_certificate_key テストキー; ssl_session_cache 共有:SSL:1m; ssl_session_timeout 5分; ssl_ciphers HIGH:!aNULL:!MD5; ssl_prefer_server_ciphers をオン; # 位置 / { #ルートhtml; # インデックス index.html index.htm; # } 位置 / { # 書き換え ^~/api/(.*)$ /$1 break; # add_header アクセス制御許可オリジン $http_origin; # クライアント要求メソッドを許可する add_header 'Access-Control-Allow-Methods' 'GET、POST、OPTIONS、DELETE、PUT'; # クライアントによって送信されたリクエスト ヘッダーを許可する add_header 'Access-Control-Allow-Headers' 'Origin、x-requested-with、Content-Type、Accept、Authorization'; # クライアントがクッキーを送信できるようにする add_header 'Access-Control-Allow-Credentials' 'true'; # クライアントが応答ヘッダーにアクセスできるようにする add_header 'Access-Control-Expose-Headers' 'Cache-Control、Content-Language、Content-Type、Expires、Last-Modified、Pragma'; # これは、プロキシ proxy_pass http://10.114.119.61:7001 を必要とするサービスを構成するためのものです。 # プロキシパス https://172.16.46.38:8443; # プロキシパス http://10.114.119.61:8866; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Port $server_port; proxy_set_header ホスト $host; proxy_set_header X-Real-IP $remote_addr; } } }
ローカルドメイン名の設定
設定を追加します:
Windows で Nginx を使用して https サーバーとリバース プロキシを構成する方法については、これで終わりです。Nginx による https サーバーの構成に関する関連コンテンツの詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後も 123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: LinuxサーバーにVueプロジェクトをデプロイする
プロジェクトを実行すると、リアルタイム更新、広告アニメーションの連続表示などの要件に遭遇することは避...
私たちが作成する Web ページでは、より多くの人々に訪問してもらいたい場合、検索エンジンを使用して...
MyISAM、MySQLでよく使われるストレージエンジン特性: 1. 同時実行性とロックレベル2. ...
参考までにWindowsにMySQLをインストールします。具体的な内容は次のとおりです。 1.まずM...
webpackjs ファイルをパッケージ化するときに、次に示すように、index.html インタ...
システム環境: Ubuntu 16.04LTSこの記事では、6 つの Docker コンテナを使用し...
このノートでは、 MySQL の B+Tree インデックスとは何ですか?クラスター化インデックスは...
目次1. インストール: 2. 使用方法: 3. 組み込みメソッド: 4. 使用方法:要約する公式サ...
QQtabBar の BEMまず、BEMとはどういう意味でしょうか? BEM は、ブロック、要素、修...
目次1. ダウンロード2. インストール3. my.ini ファイルを設定する(デフォルトのエンコー...
目次1. マップ方式2. 応用背景:需要開発プロセス中に、一部のインターフェースは、ページに表示する...
この記事は主にPostgreSQLマテリアライズドビューのプロセス分析について紹介します。サンプルコ...
目次Reactの公式サイトではライフサイクルの説明を見ることができます次に、ネストされたコンポーネン...
GitHubアドレス、気に入ったらスターを付けてくださいプラグインのプレビューチュートリアルコード表...
MySQL の内部関数instrを使用すると、従来の like クエリ メソッドを置き換えることがで...