web-dev-qa-db-ja.com

/ var / lib / nginx / proxyはどこから来たのですか?

次の設定でプロキシするようにサーバーを構成しています。

proxy_cache_path /var/lib/nginx/cache levels=1:2 keys_zone=backcache:8m max_size=20g inactive=7d;
proxy_cache_key "$scheme$request_method$Host$request_uri$is_args$args";

それにもかかわらず、nginxを起動すると、/ var/lib/nginx/proxyにもなります。両方がいっぱいになり始め、最終的にハードドライブがいっぱいになりました。

代わりにproxy_cache_pathが/ var/lib/nginx/proxyを指すようにしようとすると、次のエラーが発生します。

nginx: [emerg] the same path name "/var/lib/nginx/proxy" used in /etc/nginx/conf.d/proxy.conf:1 and in /etc/nginx/nginx.conf:62
nginx: configuration file /etc/nginx/nginx.conf test failed

Nginx.confの62行目はhttp {}セクションの終わりにすぎないので、これはオーバーライドしようとしている「デフォルト」について不平を言っていると思います。

設定した明示的な設定を複製しているように見えるこのプロキシ設定を無効にする方法がわかりません。そのデフォルトのプロキシ構成を上書き/削除する方法はありますか?

3
RangerRick

問題は、/var/lib/nginx/proxyproxy_temp_pathであることが判明しました。通常、nginxはこの一時パスにダウンロードし、ダウンロードが完了すると、ファイルをrealキャッシュディレクトリに移動します。 。

ダウンロードが完了しなかった、またはメインキャッシュに戻らなかったために、ディスクがいっぱいになったことがたくさんあったに違いありません。

この場合の解決策は、temp_pathの使用をオフにすることでした(nginx1.7.10以降のuse_temp_path=offディレクティブのproxy_cache_pathパラメーターを使用)。

5
RangerRick