Stiamo utilizzando Discourse in un container Docker. Abbiamo impostato dei limiti di frequenza con un IP in whitelist. Tuttavia, stiamo ancora ricevendo errori di limite di frequenza quando effettuiamo richieste da quell’IP. Sono abbastanza sicuro che la configurazione di nginx sia corretta, ecco come appare:
nginx è configurato per registrare un errore nel caso in cui sia stato raggiunto un limite di frequenza e stiamo effettivamente vedendo alcuni messaggi di log, ma nessuno dall’IP in whitelist. Tuttavia, stiamo ricevendo tonnellate di 429 quando effettuiamo richieste dall’IP in whitelist. Gli URL delle richieste sono profili utente (ad esempio, /users/foo.json). Esiste una sorta di limite di frequenza in Discourse stesso?
Ciao, Nginx sta effettivamente gestendo il rate limiting come hai affermato, ma Discourse ha anche il suo modo di gestire il rate limiting a livello di applicazione. Sam ha un articolo interessante a riguardo:
L’unica cosa che mi chiedo è se possiamo effettivamente limitare la frequenza con eccezioni (cioè, inserire IP in whitelist attraverso queste regole). Sto ancora cercando un modo per farlo…
So che non è nginx perché ricevo il messaggio “Hai eseguito questa azione troppe volte”, il che significa che il Discourse RateLimiter la sta gestendo.