NGNXを用いたWWWへのWWWのリダイレクト


ドメインの背後にあるWebサイトやWebアプリケーションがある場合、ユーザーはドメイン名とWWWサブドメインによってウェブサイトにアクセスできます.
たとえば、このウェブサイトは、WWWのサブドメインなしでhttps://driesdeboosere.dev(WWWサブドメインなし)とhttps://www.driesdeboosere.dev(WWWサブドメイン)でアクセス可能です.
ユーザーがhttps://www.driesdeboosere.devに行くとき、そのユーザーはhttps://driesdeboosere.dev(WWWのないなしで)にリダイレクトされます.
nginxサーバでこれを実現するには、次の手順を実行する必要があります.

DNSの設定


このリダイレクト(www.driesdeboosere.devからdriesdeboosere.devまで)またはVisa Versaをセットアップするために、あなたはドメイン(DriesdeBoosere . dev)のためのAレコードとサブドメインのためのAレコード(www.driesdeboosere.dev)を持たなければなりません.
  • ドメイン名(例えばdriesdeboosere.dev)のレコードを作成し、NGINXサーバのパブリックIPアドレス(例えば165.22.205.49)にIPアドレスを設定します.
  • 次に、あなたのサブドメイン(例えばwww.driesdeboosere.dev)のためにもう一つの記録を加えて、同じIPアドレスを指定してください.次のようになります.

    現在、あなたのサーバーはWWWと非WWWドメインによってアクセス可能です、しかし、我々はまだリダイレクトを構成する必要があります.それは次のステップです.

    nginxリダイレクトを設定する


    つのリダイレクトを行うことができます.Learn about the difference between the two.
    私たちのケースでは、私たちは永久的な301のリダイレクトを望みます、そのため、www.driesdeboosere.devを通してのすべてのトラフィックはdriesdeboosereにリダイレクトします.あなたの元のサーバーブロックを指す新しいNGinXサーバーブロックを設定します.
    あなたのサーバーへの
  • ログイン
  • 次のコマンドを入力します.
  • sudo nano /etc/nginx/conf.d/redirect.conf
    
    リダイレクトする方向に応じて、以下の2つのオプションのいずれかを使用します.

    オプション1 : WWWへのWWWのリダイレクト


    WWWから非WWWドメインにユーザーをリダイレクトする場合は、エディタで次の設定を挿入します
    server {
        server_name www.driesdeboosere.dev;
        return 301 $scheme://driesdeboosere.dev$request_uri;
    }
    
    
    保存して終了します.
    変更を有効にするには、次のコマンドを入力してnginxを再起動します.
    sudo systemctl restart nginx
    
    ブラウザでリダイレクトをテストしますwww.driesdeboosere.devに入るとdriesdeboosereにリダイレクトされます.開発
    curlコマンドでこれをテストすることができます.
    curl -I www.driesdeboosere.dev
    
    次のような301 Moved Permanentlyレスポンスを得るべきです.
    HTTP/1.1 301 Moved Permanently
    Server: nginx/1.14.0 (Ubuntu)
    Date: Thu, 12 Aug 2021 13:04:32 GMT
    Content-Type: text/html
    Content-Length: 194
    Connection: keep-alive
    Location: https://driesdeboosere.dev/
    

    オプション2 : WWWからWWWへのリダイレクト


    ユーザーを非WWWからWWWドメインにリダイレクトする場合は、エディタで次の設定を挿入します
    server {
        server_name driesdeboosere.dev;
        return 301 $scheme://www.driesdeboosere.dev$request_uri;
    }
    
    
    保存して終了します.
    変更を有効にするには、次のコマンドを入力してnginxを再起動します.
    sudo systemctl restart nginx
    
    ブラウザでリダイレクトをテストします入力Driesdeboosere.devはwww.driesdeboosere.devにリダイレクトされます.
    curlコマンドでこれをテストすることができます.
    curl -I driesdeboosere.dev
    
    次のような301 Moved Permanentlyレスポンスを得るべきです.
    HTTP/1.1 301 Moved Permanently
    Server: nginx/1.14.0 (Ubuntu)
    Date: Thu, 12 Aug 2021 13:04:32 GMT
    Content-Type: text/html
    Content-Length: 194
    Connection: keep-alive
    Location: https://www.driesdeboosere.dev/
    

    結論


    それだ!あなたのNGNXパーマネントリダイレクトが正しく設定され、あなたのユーザーはあなたの非WWWおよびWWWドメインを介してWebサーバーにアクセスできるようになります.

    恒久的で一時的な


    301リダイレクトする


    301リダイレクトは永久リダイレクトです.このように、我々は検索エンジンとブラウザーにページが永久に新しいアドレスにリダイレクトされることを知らせます.古いアドレスは、検索エンジンから削除され、新しいアドレスに置き換えられます.

    302リダイレクト(仮)


    302リダイレクトは一時的なリダイレクトです.このように、我々は検索エンジンとブラウザーにページが一時的に新しいアドレスに向けられたことを知らせます.