"limit_req_zone" unknown directive
Maxim Dounin
mdounin at mdounin.ru
Fri Oct 29 15:41:27 MSD 2010
Hello!
On Fri, Oct 29, 2010 at 07:28:07AM -0400, TAiS46 wrote:
> Maxim Dounin Wrote:
> -------------------------------------------------------
> > Hello!
> >
> > On Fri, Oct 29, 2010 at 06:33:45AM -0400, TAiS46
> > wrote:
> >
> > > i have added to my nginx.conf
> > >
> > > http {
> > > limit_req_zone $binary_remote_addr
> > zone=antiddos:10m rate=10r/s;
> > > }
> > >
> > > And in my site config
> > >
> > > location ~ \.php$ {
> > > #limit_req zone=antiddos burst=5;
> > > }
> > >
> > > But i am only getting the error in the topic.
> > > Here my output of nginx -V
> >
> > [...]
> >
> > Most likely reason is that you've added
> > limit_req_zone outside of
> > http{} block. Please show full config.
>
> user www-data;
> worker_processes 16;
>
> error_log /var/log/nginx/error.log info;
> pid /var/run/nginx.pid;
>
> events {
> worker_connections 2048;
> }
>
> http {
> client_max_body_size 1600m;
> include /etc/nginx/mime.types;
> default_type application/octet-stream;
>
> access_log off;
>
> sendfile on;
> #tcp_nopush on;
>
> keepalive_timeout 0;
> #keepalive_timeout 65;
> tcp_nodelay on;
>
> gzip off;
>
> include /etc/nginx/conf.d/*.conf;
> include /etc/nginx/sites-enabled/*;
>
> limit_req_zone $binary_remote_addr zone=one:10m rate=10r/s;
> }
Most likely you have syntax error in one of your include files,
e.g. extra "}" which moves limit_req_zone outside of http{} block.
Note well: you have to define limit_req_zone before you use it
limit_req, so after fixing syntax error you'll see error message
like
[emerg]: unknown limit_req_zone "one" in ...
I.e. moving limit_req_zone before includes is required.
Maxim Dounin
More information about the nginx
mailing list