Nginx: ограничение скорости для try_files
Я не могу понять, как применить ограничение скорости только к статическим файлам, обслуживаемым с try_files
(и не для @app location
). Является ли это возможным?
Вот моя конфигурация:
limit_req_zone $binary_remote_addr zone=mylimit:10m rate=2r/s;
server {
listen 80;
server_name example.com;
# serve the static file directly if it exists in the public Rails folder...
try_files $uri @app;
location @app {
# ... otherwise send the request to the Rails application
proxy_pass http://app;
proxy_redirect off;
}
}
Я знаю, что могу использовать следующее:
limit_req zone=mylimit burst=50 nodelay;
Однако где я должен поставить эту линию? Если я положу это в server
тогда и мой @app
будет использовать эти настройки, а это не то, что я хочу... Я просто хочу установить предел, определенный для файлов, обслуживаемых с использованием try_files
, Обратите внимание, что статические файлы могут находиться в любом месте, даже в корневой папке (например, /favicon.ico
и много других).