1. 最新のnginx dockerイメージをダウンロードする $ docker pull nginx:最新 2. nginxコンテナを起動する nginxコンテナを起動するには、次のコマンドを実行します。 docker run --detach \ --name wx-nginx \ -p 443:443\ -p 80:80 \ -v /home/evan/workspace/wxserver/nginx/data:/usr/share/nginx/html:rw\ -v /home/evan/workspace/wxserver/nginx/config/nginx.conf:/etc/nginx/nginx.conf/:rw\ -v /home/evan/workspace/wxserver/nginx/config/conf.d/default.conf:/etc/nginx/conf.d/default.conf:rw\ -v /home/evan/workspace/wxserver/nginx/logs:/var/log/nginx/:rw\ -v /home/evan/workspace/wxserver/nginx/ssl:/ssl/:rw\ -d nginx
ここでは、次のファイルを準備する必要があります。 1. nginx 設定ファイル まずnginx.confファイルです。デフォルトの設定ファイルは次のとおりです。 #nginx を実行しているユーザー user nginx; #プロセスを開始し、CPU の数と同じになるように設定します。worker_processes 1; #グローバルエラーログとPIDファイルの場所 error_log /var/log/nginx/error.log warn; pid /var/run/nginx.pid; #動作モードと接続制限イベント { #単一のバックグラウンドワーカーの同時プロセスの最大数は1024に設定されています ワーカー接続 1024; } http { #MIME タイプを設定する include /etc/nginx/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 /var/log/nginx/access.log メイン; ファイル送信オン; #tcp_nopush オン; #接続タイムアウトイベントを設定します keepalive_timeout 65; #GZIP 圧縮をオンにします #gzip on; /etc/nginx/conf.d/*.conf を含めます。 } 最後の行には、サーバフィールドを設定するために使用される別の設定ファイルconf.d/default.confも含まれていることがわかります。 サーバー{ listen 80; #ポート80をリッスンします。すべてのアクセスをHTTPSに強制する場合は、この行をキャンセルする必要があります server_name www.buagengen.com; #ドメイン名#charset koi8-r; #access_log /var/log/nginx/host.access.log メイン; # ホームページのインデックスディレクトリと名前の場所を定義します / { ルート /usr/share/nginx/html; インデックス index.html index.htm; } # エラープロンプトページを定義します #error_page 404 /404.html; #エラーページを /50x.html にリダイレクトします エラーページ 500 502 503 504 /50x.html; 場所 = /50x.html { ルート /usr/share/nginx/html; } } 2. nginxのデフォルトホームページのHTMLファイル この HTML は自分で定義できます。どれでも構いません。 このとき、IP アドレスを通じて nginx で定義された HTML ファイルに直接アクセスできます。ただし、現時点では http 経由のアクセスのみであり、https 経由のアクセスはまだできません。nginx サーバーに証明書を追加する必要があります。 3. openssl経由で証明書を生成する server.key を設定します。パスワードを 2 回設定する必要があります。 openssl genrsa -des3 -out server.key 1024 パラメータ設定では、まず以前に設定したパスワードを入力する必要があります。 openssl req -new -key server.key -out server.csr 次に、以下の情報を入力する必要があります。大まかに記入してください。とにかく、これはテスト用です。 国名 (2 文字コード) [AU]: 州または県名 (フルネーム) [Some-State]: 地域名 (例: 市) []: 組織名 (例: 会社) [Internet Widgits Pty Ltd]: 組織単位名 (例: セクション) []: 共通名(例:サーバーのFQDNまたはあなたの名前)[]:ウェブサイトのドメイン メールアドレス[]:メールアドレス 次の「追加」属性を入力してください 証明書のリクエストと一緒に送付されます チャレンジパスワード []: ここにパスワードを入力してください オプションの会社名 []: RSA キーを書き込みます (以前に設定したパスワードも入力する必要があります)。 openssl rsa -in server.key -out server_nopwd.key 秘密鍵を取得します: openssl x509 -req -days 365 -in server.csr -signkey server_nopwd.key -out server.crt この手順を完了すると、必要な証明書ファイルと秘密キーが取得されます。
4. httpsアクセスをサポートするようにnginxサーバーを構成する 前の手順で生成されたファイルを、ホストの ssl ディレクトリ (/home/evan/workspace/wxserver/nginx/ssl) にコピーします。 次に、構成ファイル default.conf を変更し、SSL サポートを追加します。 サーバー{ listen 80; #ポート 80 を listen します。すべてのアクセスを HTTP に強制する場合は、この行を登録解除する必要があります。 listen 443 ssl; server_name www.buagengen.com; #ドメイン名# SSLを追加 #ssl on; #HTTPs アクセスを強制する場合は、この行で ssl_certificate /ssl/server.crt を開く必要があります。 ssl_certificate_key /ssl/server.key; ssl_session_cache 共有:SSL:1m; ssl_session_timeout 5分; # openssl ssl_protocols SSLv2 SSLv3 TLSv1.2 でサポートされている形式で暗号を指定します。 ssl_ciphers HIGH:!aNULL:!MD5; # パスワード暗号化方式 ssl_prefer_server_ciphers on; # SSLv3 および TLSv1 プロトコルに依存するサーバー暗号は、クライアント暗号よりも優先されます # ホームページのインデックスディレクトリと名前の場所を定義します / { ルート /usr/share/nginx/html; インデックス index.html index.htm; } #エラーページを /50x.html にリダイレクトします エラーページ 500 502 503 504 /50x.html; 場所 = /50x.html { ルート /usr/share/nginx/html; } } nginx コンテナを再起動します。これで、https 経由で nginx サーバーにアクセスできるようになります。 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
>>: MySQL 5.5.56 バージョン (バイナリ パッケージ インストール) カスタム インストール パス ステップ レコード
目次基本的な紹介入門テスト (Excel ファイルからのデータの読み取り)ステップ1: Maven座...
1. システムの Python バージョンに応じて、pip インストール パッケージをダウンロードし...
MySQL レプリケーションには、SQL ステートメント ベースのレプリケーション (SBR)、行ベ...
この記事はmysqlデータベースです質問 1 表 1 のデータを表 2 にインポートします。表 1 ...
Nginx はバージョン番号を非表示にする実稼働環境では、セキュリティ上の脆弱性の漏洩を避けるために...
目次操作方法操作プロセス既存のテーブルにパーティション テーブルを作成し、データを新しいテーブルに移...
目次1. 解析する1.1 傍受のルール1.2 傍受プロセス部分1.3 パーサーの概要2. 最適化する...
誰もが自分の Web ページの背景にふさわしい画像を見つけることに悩むことが多いと思います。これは事...
1. Animate.css の紹介Animate.css は、Web プロジェクトですぐに使用で...
この記事では、JavaScriptでシンプルな時計を実装するための具体的なコードを参考までに紹介しま...
ページの自動スクロール効果は JavaScript で実現できますが、今日偶然、JS 制御なしでさま...
この記事は主に、みんなで共有できるVue3ベースのフルスクリーンドラッグアップロードコンポーネントを...
アンカーリンクをクリックするとスムーズにスクロールし、自由にトップ位置に調整できます。 1. アンカ...
Nginx は現在、最も人気のあるロード バランサーの 1 つです。インターネット トラフィックの...
serializableシリアル化(問題なし)トランザクションは順次実行する必要があります。前のトラ...