ホームページ > 記事 > ウェブフロントエンド > ファイルを変更したにもかかわらず Nginx キャッシュがクリアされないのはなぜですか?
変更にもかかわらず Nginx キャッシュをクリアできない
ファイルの変更にもかかわらず、Nginx フロント サーバーが古い CSS ファイルを提供し続けるという問題が発生した場合、あなたは一人ではありません。 Nginx を再起動してオンラインで検索しても、解決策が見つからない可能性があります。
キャッシュ ディレクトリ (例: var/cache/nginx) を削除するという推奨解決策は、サーバーに不足している可能性があるため、すべての場合に適用できるわけではありません。
解決策:
問題は、nginx.conf ファイルで有効になっている sendfile 設定に起因する可能性があります。この設定はファイル転送を最適化するために設計されており、Virtualbox などの仮想マシン環境では誤動作する可能性があります。 sendfile を無効にすると、Nginx は静的ファイルの提供に別の方法を使用するようになり、キャッシュの問題が解決されます。
この動作は、 Virtualbox 環境では、Virtualbox が sendfile 操作で問題に直面しています。
sendfile を無効にするには、nginx.conf ファイル (通常は location ブロック内) で設定を見つけ、その値を「off」に変更します。
sendfile off;
この変更を加えた後に Nginx を再起動すると、更新された CSS ファイルを問題なく提供できるようになります。
以上がファイルを変更したにもかかわらず Nginx キャッシュがクリアされないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。