技術ブログ

プログラミング、IT関連の記事中心

CentOS上のNginxでHTTPからHTTPSへリダイレクトする方法

目次

CentOS上のNginxでHTTPからHTTPSへリダイレクトする方法

CentOSで動作するNginxサーバーにおいて、http://example.com から https://example.com へのリダイレクト設定を行う方法を説明します。
この設定はセキュリティを強化し、HTTPSを通じた安全な通信を保証します。

ステップ1: Nginx設定ファイルの編集

Nginxの設定ファイルは通常 /etc/nginx/nginx.conf または /etc/nginx/conf.d/ ディレクトリ内にあります。
適切なファイルをエディタで開いてください。

ステップ2: HTTPからHTTPSへのリダイレクト設定

server ブロックを以下のように設定して、HTTPからHTTPSへのリダイレクトを行います。

server {
    listen 80;
    server_name example.com www.example.com;
    return 301 https://$server_name$request_uri;
}

この設定により、ポート80(HTTP)でのリクエストをHTTPSの同じURLに301リダイレクトします。

ステップ3: HTTPS用の設定確認

HTTPS用の server ブロックが存在しているか確認してください。
存在しない場合は、SSL証明書と秘密鍵のパスを指定して追加する必要があります。

ステップ4: Nginxの設定テスト

設定の変更後には、nginx -t コマンドを実行して構文が正しいかチェックしてください。

ステップ5: Nginxの再起動またはリロード

設定を適用するために、Nginxを再起動(systemctl restart nginx)またはリロード(systemctl reload nginx)します。

これで、http://example.com にアクセスすると https://example.com に自動的にリダイレクトされるようになります。
問題が解決しない場合は、Nginxのログ(通常 /var/log/nginx/error.log にあります)をチェックして、エラーメッセージを確認してください。