Nginxはhttpとhttpsの両方のアクセスをサポートするために同じドメイン名を設定します

Nginxはhttpとhttpsの両方のアクセスをサポートするために同じドメイン名を設定します

Nginx は同じドメイン名で構成されており、http と https の両方でアクセスできます。証明書は Alibaba Cloud に無料で適用されます。

サーバ
{
聞く 80;
443 ssl を聴く;
sslオン;
server_name ドメイン名;
インデックス index.html index.htm index.php default.html default.hm default.php;
ssl_certificate /usr/local/nginx/cert/21402058063066221.pem; // 申請後にAlibaba sshから提供されたpemをダウンロードする
ssl_certificate_key /usr/local/nginx/cert/21402058063066221.key; //申請後にAlibaba sshから提供されたキーをダウンロードする
ssl_session_timeout 5分;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_プロトコル TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers をオン;

 
root /home/wwwroot/website ディレクトリ;

include laravel.conf; // さて、これが Laravel の設定です。これはあなたに適していない可能性がありますので、無視してください #error_page 404 /404.html;
enable-php.conf をインクルードします。

場所 ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{
有効期限は30日です。
}

場所 ~ .*\.(js|css)?$
{
12時間で期限切れになります。
}

アクセスログ /home/wwwlogs/airclass.mime.org.cn.log;
}

鍵は上記の listen 80 にあります。

443 ssl をリッスン; ポート 80 を開く

もちろん、このように遊んでも意味がありません。https なので、http 経由でデータを送信する必要がありません。すべての http リクエストを https に転送する必要があります。

nginx リダイレクト コマンドは、http を https にリダイレクトするために使用されます。では、リダイレクトはどのように記述すればよいのでしょうか?古いバージョンの nginx では、次のような形式が使用されていた可能性があります。
つまり、別の仮想マシンサーバー、ポート80を追加することです

サーバー{
聞く 80;
サーバー名 www.domain.com;
rewrite ^/(.*) https://$server_name$1 permanent; #Httpsへジャンプ
}

書き直しには、以下のように異なるバージョンがまだある。

^/(.*)$ https://domain.com/$1 を永続的に書き換えます。

または

^ https://domain.com$request_uri? を永久に書き換えます。

現在、nginx の新しいバージョンでは書き込み方法が変更されており、上記の方法は推奨されなくなりました。おそらく、インターネット上には、最初のタイプについて語る記事がまだたくさんあるでしょう。

以下は、nginx http ページを https ページにリダイレクトするための最新のサポートされている方法です。

サーバー{
聞く 80;
server_name ドメイン.com;
301 https://$server_name$request_uri を返します。
}

サーバー{
443 ssl を聴く;
server_name ドメイン.com;

}

しかし、私の nginx/1.10.0 は動作していないようです。おそらくこの書き方はサポートされていないのでしょう...

以下は、http から https に基づく完全な構成です。

サーバ
{
#聞く80;
聞く 443;
sslオン;
server_name domain.com; // あなたのドメイン名index index.html index.htm index.php default.html default.htm default.php;
ssl_certificate /usr/local/nginx/cert/user.medsci-tech.com/214020580630662.pem;
ssl_certificate_key /usr/local/nginx/cert/user.medsci-tech.com/214020580630662.key;
ssl_session_timeout 5分;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_プロトコル TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers をオン;

root /home/wwwroot/web/public; //プロジェクトルートディレクトリ include laravel.conf;
#エラーページ 404 /404.html;
enable-php.conf をインクルードします。

場所 ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{
有効期限は30日です。
}

場所 ~ .*\.(js|css)?$
{
12時間で期限切れになります。
}

}
サーバー{
聞く 80;
server_name ドメイン.com;
^/(.*) https://$server_name$request_uri? を永久に書き換えます。
}

同じドメイン名で http と https の両方のアクセスをサポートするように Nginx を構成する方法については、これで終わりです。同じドメイン名で http と https の両方をサポートする Nginx に関する関連コンテンツの詳細については、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • SSL を実装するために nginx を設定する方法の例
  • Nginx は https ウェブサイト構成コード例を実装します
  • https暗号化アクセス用にnginxを設定するための詳細なチュートリアル
  • Nginxドメイン名転送のhttpsアクセスの実装
  • Alibaba Cloud Nginx はドメイン名アクセス プロジェクトを実装するために https を設定します (グラフィック チュートリアル)
  • Nginx設定の原理と実装プロセスの詳細な説明https
  • HttpとHttpsの両方をサポートするNginxの詳細な設定
  • 複数のドメイン名に対する Nginx リバース プロキシを使用した HTTP および HTTPS サービスの実装
  • Nginx を使用して https ルートドメイン名への 301 リダイレクトを実装するためのサンプル コード
  • nginx で http でアクセスする Web サイトを https に変更する方法

<<:  MySQL 8.0 ディクショナリテーブル拡張の詳細な説明

>>:  Vue3 ドキュメント クイックスタート

推薦する

Angularコンポーネントの仲介モードの詳細な説明

目次1. 仲介業者モデル2. 例1. 見積コンポーネントに購入ボタンを追加する2. 親コンポーネント...

Web ページのソース ファイルを表示できない場合はどうすればよいですか?

Q: Outlook または IE のどちらを使用している場合でも、マウスを右クリックすると、ポッ...

JSネイティブ2列シャトル選択ボックスの実装例

目次いつ使うか構造的ブランチコードいつ使うか選択動作を完了するには、2 つの列間で要素を直感的に移動...

Vue3の一般的なAPIの使用方法の紹介

目次ライフサイクルの変化反応的な参照vue2.x では ref を使用して要素タグを取得します。vu...

jsはショッピングウェブサイトの商品の拡大鏡効果を実現します

この記事では、ショッピングサイトの商品の拡大鏡効果を実現するためのjsの具体的なコードを紹介します。...

WeChatアプレットがテキストスクロールを実装

この記事の例では、WeChatアプレットでテキストスクロールを実装するための具体的なコードを参考まで...

ログインフォームを実装するためのReactサンプルコード

Vue ユーザーとして、React を拡張する時が来ました。antd の導入、less と rout...

テキストの展開と折りたたみの効果を実現するJavaScript

リスト形式のテキストの展開と折りたたみの実装は参考までに。具体的な内容は以下のとおりです。必要: 1...

画像内のrarファイルを隠す方法

このロゴを .rar ファイルとしてローカルに保存し、解凍して効果を確認することができます。よりシン...

Vueはプラグインを使用して画像を比例してカットします

この記事では、プラグインを使用して画像の比例カットを実現するVueの具体的なコードを参考までに共有し...

Centos で MySQL パスワードを変更する方法

1. MySQL ログイン設定を変更します。 # vim /etc/my.cnf文を追加: skip...

ページングクリックコントロールを実装するネイティブJS

これは、ネイティブJSを使用してページングクリックコントロールを実装する必要がある面接の質問です。参...

Centos7でglibcをアップグレードするとシステム異常(起動できない)になる場合の解決方法

目次問題の原因:解決:解決:私は Centos7 を使用しています (理論的にはこの方法は Cent...

デザイナーが再びハマーの公式サイトに不満を述べる

昨年、この公開書簡は大ヒットし、羅永浩氏を驚かせた。今日、著者が新しい章を発表するとは思ってもみなか...

MySQL で 1000 万件のレコードをすばやくクエリする方法

目次通常のページングクエリ最適化する方法大きなオフセット使用ID制限大量データ問題の最適化通常のペー...