nginx相关指令及使用(四)

http mamcached模块

eg,若用户访问 /cache/ 开头的uri,则读取以uri为key的memcache缓存内存显示给用户

若key不存在,重定向到/write_memcached.php文件给程序往mem写缓存,缓存时间120s

  
  
  1. location /cache/{
  2.  memcached_buffer_size 10240;
  3.  set $memcached_key $request_uri;
  4.  memcached_pass 127.0.0.1:11211;
  5.  error_page 404 =200 /write_memcached.php;
  6. }
  7. location ~ .*\.(php|php5)?${
  8.  fastcgi_pass 127.0.0.1:9000;
  9.  fastcgi_index index.php;
  10.  include fcgi.conf;
  11.  fastcgi_param MEMCACHED_KEY $memcached_key;
  12. }

write_memcached.php内容如下:

  
  
  1. <?php
  2. $key = $_SERVER['memcached_key'];
  3. $value = "<html><head><title>title</title></head><body>".date("Y-m-d H:i:s")."<BR/><BR/></body></html";
  4. $mem = new Memcache;
  5. $mem->connect('127.0.0.1',11211);
  6. $mem->set($key,$value,false,120);//缓存120s
  7. $mem->close();
  8. echo $value;
  9. //另外输出一行信息,来检验缓存是否有效,若缓存无效会显示下边
  10. echo "get from php";

memcached_pass [name:port]用来设置memcached服务器的地址和端口

memcached_connection_timeout [time]设置mem服务器的超时连接时间

memcached_read_timeout 设置从mem服务器读取数据的超时时间

memcached_buffer_size 设置接收 发送缓冲区大小,单位 字节

memcached_next_upstream [error|timeout|invalid_response|not_found|off]设置在哪种状态下把请求转发到upstream负载均衡的另一台服务器上

$memcached_key memcached的key值,可以用请求uri作为该key eg set $memcached_key $uri;


http proxy模块:

用于将请求转发到其它的服务器 keep-alive是在同一个连接中发送多次请求,

注意:使用http代理模块或者使用fastcgi时,整个客户端的请求在传递给后台server之前将被nginx缓存,数据传输的进度测量将不准确

proxy_buffer_size size 用来设置从被代理服务器获取的第一部分应答信息的缓冲区大小,会保存用户的头信息供nginx进行规则处理

proxy_buffering on|off 用来开启或关闭对被代理服务器的应答缓冲

若缓冲开启,nginx会假设被代理服务器的应答尽可能的快,并将其保存到缓冲区,可以使用proxy_buffer_size和proxy_buffers来配置缓冲区的信息

若应答内容无法完全放到缓冲区,将会有一部分被写入磁盘

若缓冲关闭,从后端接收到的应答内容将被立即同步到客户端

对于长轮询的应用,应尽可能的关闭缓冲,否则异步应答将被缓存,导致计算机的传输不工作

proxy_buffer设置从被代理服务器读取应答信息的缓冲区的数目和大小,假设都<32k

可以使用 proxy_buffers 4 32k; //默认大小是4k或者8k,取决于操作系统

proxy_busy_buffers_size size; 系统繁忙时设置的缓冲区的大小,一般是正常时的2倍

proxy_pass 用来设置被代理的server或者unix套接字

proxy_redirect用于更改被代理服务器应答header头中的location和refresh


set_real_ip_from 用来设置可信的代理server,这些ip将在请求转发时被去掉

real_ip_header 设置转发客户端ip地址的header头名称


ssl模块相关指令:

ssl_certificate 为当前的vhost指定pem格式证书文件,默认cert.pem 路径为conf所在的目录

ssl_certificate_key file 为当前的vhost指定pem格式的私钥文件

ssl_client_certificate file指定pem格式的CA证书,用于检查客户端证书

更多的详细信息看下官方文档^^ ,用的不太多,不一一列举了~~ 还有邮件模块


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值