nginx 第9話
生成: LM Studio Local

nginx 第9話: 第9話の内容

はじめに

前回はnginx のSSL/TLS設定とHTTP/2機能について学びました。今回はnginx のセキュリティ設定とキャッシュの最適化について説明します。

これらの機能は、サーバーのセキュリティ性とパフォーマンスを向上させるために不可欠です。セキュリティ設定では、nginx が攻撃や脆弱性からサーバーを保護することができ、キャッシュの最適化では、nginx がキャッシュに含めるファイルやデータについて指定し、キャッシュの効率を高めます。

セキュリティ設定

nginx では、セキュリティ設定は http セクション内で行うことができます。例えば、以下のように server_tokens ディレクティブを使用すると、nginx のバージョン情報を非表示にすることができます。これにより、攻撃者が nginx の弱点を突き止めるのを防ぎます。

http {
    server_tokens off;
}

また、ssl_protocols ディレクティブを使用すると、nginx がサポートする SSL/TLS プロトコルを指定できます。これにより、古いプロトコルの脆弱性からサーバーを保護できるようになります。

http {
    ssl_protocols TLSv1.2 TLSv1.3;
}

キャッシュの最適化

nginx では、キャッシュの最適化は proxy_cache ディレクティブを使用して行うことができます。例えば、以下のように proxy_cache を指定すると、nginx がキャッシュに含めるファイルやデータについて指定し、キャッシュの効率を高めます。

http {
    proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=my_cache:10m inactive=60m;

    server {
        listen 80;
        server_name example.com;

        location / {
            proxy_pass http://backend;
            proxy_cache my_cache;
            proxy_cache_valid 200 302 1h;
            proxy_cache_valid 404 10m;
        }
    }
}

この設定では、nginx はキャッシュに含めるファイルやデータについて /var/cache/nginx ディレクトリを使用し、キャッシュのキーゾーンとして my_cache を指定します。さらに、キャッシュの有効期間は 1 時間と 10 分で指定されます。

以上がnginx のセキュリティ設定とキャッシュの最適化の内容です。これらの機能は、サーバーのセキュリティ性とパフォーマンスを向上させるために不可欠です。