Nginx的Uwsgi模块(部分模块指令)

 

 

该模块能够使得NginxuWSGI进程进行交互,并且会控制传递给uWSGI进程的参数。对于uwsgi协议和uWSGI服务器,uWSGI服务器就是uwsgi协议的一个实现。

 

该模块首次提供出现在nginx-0.8.40版本中,因此,如果要使用这个功能那么必须要选择这个版本及其以上。

 

5.1 示例配置

 

location / {

  include uwsgi_params;

  uwsgi_pass unix:/var/run/example.com.sock;

}

   

一个有缓存的例子

 

http {

  uwsgi_cache_path   /path/to/cache  levels=1:2

                       keys_zone=NAME:10m

                       inactive=5m;

 

  server {

    location / {

      uwsgi_pass    unix:/var/run/example.com.sock;

      uwsgi_cache   NAME;

      uwsgi_cache_valid   200 302  1h;

      uwsgi_cache_valid   301      1d;

      uwsgi_cache_valid   any      1m;

      uwsgi_cache_min_uses  1;

      uwsgi_cache_use_stale error  timeout invalid_header http_500;

    }

  }

}

   

    缓存只对后台Cache-ControlExpires等感兴趣,而Vary处理不受影响。

 

5.2    

 

uwsgi_bind

    能:设定绑定到上游服务器的本地地址。该指令对于如果一台主机(这里指的是Nginx所在的主机)有多个网卡/别名(interface/aliase),那么你可以指定从特定的网卡/IP地址上传递出去的连接。

    法:uwsgi_bind address

值:none

使用环境:http, server, location

    如:uwsgi_bind  192.168.1.1

 

uwsgi_buffer_size

    能:该指令用于设置缓冲大小。uWSGI服务器传来响应数据包的第一部分首先被读取到该缓存,通常,在这个响应部分是一个小的响应头。默认情况下,缓存大小等于在指令uwsgi_buffers中指定的一个buffer的大小,然而这可能设置的有点小。如果出现后台网页不完整或者是5XX错误是不妨将该参数调整的大一些。

    法:uwsgi_buffer_size the_size

值:uwsgi_buffer_size 4k/8k

使用环境:http, server, location

 

uwsgi_buffers

    能:该指令用于设置缓冲的大小和数量,默认情况下,一个buffer等于一个内存页面的大小,这依赖于系统欧洲,可能是4K8K 或者是16K

    : uwsgi_buffers the_number is_size

默 认 值: uwsgi_buffers 8 4k/8k

使用环境: http, server, location

 

uwsgi_busy_buffers_size

   能:无文档。

    : uwsgi_busy_buffers_size size

默 认 值: uwsgi_busy_buffers_size ["#uwsgi_buffer_size"] * 2  

使用环境: http, server, location, if

 

uwsgi_cache

    能:该指令用于指定一块区域用于缓存,实际上就是一块用于缓存的命名的共享内存。同一块共享区域可以在多处使用。

    : uwsgi_cache zone|off

默 认 值: off

使用环境: http, server, location

 

uwsgi_cache_bypass

    能:该指令在0.8.46版本后提供。它指示在什么情况下请求将会绕开缓存响应而是将请求传递到上游的服务器。看下面的例子:

 

 

uwsgi_cache_bypass $cookie_nocache  $arg_nocache$arg_comment;

uwsgi_cache_bypass $http_pragma     $http_authorization;

       

如果表达式为空字符串或者是"0",那么结果为假。比如,在上面的这个例子中,如果在请求中将cookie 设置为"nocache",那么请求将不会被缓存,它将总是被传递到后端服务器。

 

注意,尽管请求不会被缓存了,但是从后台服务器传来的响应仍然可能会有资格被缓存。于是,可以通过发送一个自定义的头,例如"My-Secret-Header: 1"来刷新缓存中的一个条目,然后再添加以下条目:

 

uwsgi_no_cache $http_my_secret_header;

 

    : uwsgi_cache_bypass variable1 variable2...

默 认 值: none

使用环境: http, server, location

 

uwsgi_cache_key

    能:该指令用于设置缓存缓存所用的key

    : uwsgi_cache_key line

默 认 值: none

使用环境: http, server, location

    如:uwsgi_cache_key localhost:9000$request_uri;

 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/27043155/viewspace-732226/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/27043155/viewspace-732226/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值