皆さん、こんにちは。この小さなラウンドのNginxチュートリアルとトリックを続けます。今回は、NginxでETagを無効にする方法を説明します。以前の投稿と同様に、これは単純な投稿になりますが、サーバー上で大いに役立つ可能性があります。
Etagとは何ですか?
ETag(エンティティタグ)はHTTPの一部であり、プロトコルがWebキャッシュを検証するために使用するメソッドであり、ユーザーが条件付きリクエストを作成できるようにします。
注意すべき点の1つは、HTTPヘッダーでのETagの使用はオプションであるということです。しかし、問題は、多くのサイト管理者がそれを安全ではなく、セキュリティリスクと見なし、無効にすることを選択することです。
問題は、ETagが誤用された場合、ブラウザのキャッシュを介してユーザーを追跡できる可能性があることです。それで、今日はそれを無効にします。
続行する前に、問題なく投稿を完了するための要件を満たしていることを確認する必要があります
- Nginxをインストールして構成する必要があります。したがって、Linuxディストリビューションの公式リポジトリを使用していることを確認してください。
- Nginxのバージョンは1.9.5より前である必要があります。ほとんどのディストリビューションには最新バージョンが含まれているため、問題はありません。
- 端末の使用に関する基本的な知識を持っている。
-
sudo
を持つユーザー アクセスまたはルートアクセス。
行きましょう。
NginxでETagをグローバルに無効にする方法
サーバー上にあるすべてのサイトにグローバルに影響するETagを無効にする場合は、/etc/nginx/nginx.conf
であるNginx構成ファイルを編集する必要があります。 。
sudo nano /etc/nginx/nginx.conf
そしてhttp
の内部 セクションにetag off
を追加します 指令。このようになります。
http {
...
etag off;
...
}
変更を保存し、エディターを閉じてNginxを再起動し、変更を適用します。
sudos sytemctl restart nginx
1つのサイトのNginxでETagを無効にする方法
複数のサイトがあり、それぞれに専用の構成がある場合は、ETagを無効にする各サイト構成ファイルを編集する必要があります。
たとえば、
sudo nano /etc/nginx/sites-enabled/domain.conf
ただし、前の方法とは異なり、etag off
を追加する必要があります server
内 。このようになります。
server {
listen 80;
server_name domain;
etag off;
}
同様に、エディターを閉じてNginxを再起動します。
ETagは非常に便利ですが、少し危険でもあります。非常に多くのシステム管理者は、それを無効にする方が良いと考えています。今日、あなたはNginxを使ってこれを学びました。