Django Middlewareはサーバーが再起動されると ip_count がリセットされる
上記のMiddlewareは、サーバーが再起動されるまで __init__ メソッドで初期化された self.ip_count 辞書にアクセス回数を保持しています。そのため、サーバーが再起動されると ip_count がリセットされます。
もし、アクセス制限を一時的に有効にしたい場合、サーバー再起動までの期間であれば上記のMiddlewareが有効です。しかし、サーバー再起動後に ip_count がリセットされ、新しいアクセスがまたカウントされるようになります。
もし、リブートしてもアクセス制限を維持したい場合は、ip_count の情報をデータベースやキャッシュなどの永続的なストレージに保存するか、サーバー再起動時にこの情報を保持するように調整する必要があります。

ディスカッション
コメント一覧
まだ、コメントがありません