nginx笔记一

1.nginx的基本作用

 

2.选择nginx的理由

a)         支持 5w 的并发。

b)        内存消耗少。

c)         成本低。

d)        节省带宽(??)。

e)         配置简单,支持重写( Rewrite ),内置健康检查,热部署,稳定性高。

 

3.nginx中location模块的详细参数介绍

Nginx的Location可以有以下几个匹配:
1. =   严格匹配这个查询。如果找到,停止搜索。 
2. ^~ 匹配路径的前缀,如果找到,停止搜索。
3. ~   为区分大小写的正则匹配   
4. ~* 为不区分大小写匹配
5.!~和!~*分别为区分大小写不匹配及不区分大小写不匹配
文件及目录匹配
* -f和!-f用来判断是否存在文件
* -d和!-d用来判断是否存在目录
* -e和!-e用来判断是否存在文件或目录
* -x和!-x用来判断文件是否可执行

4.Nginx配置语法
详情看(http://hi.baidu.com/wastorode/blog/item/39bf710a132550db7acbe1ed.html)
5.详解一个实例
Xml代码   收藏代码
  1. 配置项详解。  
  2.         #使用的用户和组  
  3.         #user  nobody;  
  4.         #衍生进程数(是cpu数的两倍)  
  5.         worker_processes  4;  
  6.         #系统默认的日志文件在nginx\logs 下  
  7.                 #错误日志   
  8.         #error_log  logs/error.log;  
  9.         #指定pid存放路径  
  10.         #pid        logs/nginx.pid;  
  11.         events {  
  12.                 #使用网络I/O模型,Linux系统推荐采用epoll。  
  13.                 user epoll;  
  14.                 #允许的最大连接数  
  15.             worker_connections  51200;  
  16.         }  
  17.         http {  
  18.             include       mime.types;  
  19.             default_type  application/octet-stream;   
  20.             #设置字符集,如果有多个字符集,就不要随便设置,应该在html中通过meta设置  
  21.             #charset utf-8;  
  22.                   
  23.             #部分nginx的全局变量。  
  24.             #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '  
  25.             #     '$status $body_bytes_sent "$http_referer" '  
  26.             #    '"$http_user_agent" "$http_x_forwarded_for"';  
  27.           
  28.             #access_log  logs/access.log  main;  
  29.           
  30.                 #设置客户端能够上传的文件大小  
  31.                 #client_max_body_size 8m;  
  32.                 #允许发送文件  
  33.             sendfile        on;  
  34.                 #超时时间  
  35.             keepalive_timeout  65;  
  36.                   
  37.         #关闭gzip压缩  
  38.             gzip  off;  
  39.               
  40.             #负载均衡的主要模块  
  41.                 upstream ttpod {  
  42.                 #weight 服务器权重,值高分配到的客户端越多,默认1  
  43.                 server www.ttpod.com:80 weight=1;  
  44.                 #max_fails指定的时间内对后端服务器请求失败的次数。默认1.fail_timeout经历失败后的暂停时间。  
  45.                 server www.baidu.com:80 max_fails=1 fail_timeout=30s;     
  46.                 server www.google.cn:80;  
  47.                 #还有backup服务器的设置。略  
  48.                 }  
  49.                   
  50.                 #设定虚拟服务器1  
  51.             server {  
  52.                 listen       80;  
  53.                      #我的内网ip。  
  54.                 server_name  localhost 192.168.3.33;  
  55.                 #access_log  logs/host.access.log  main;  
  56.                 location / {  
  57.                     set $ismob 0;  
  58.                     #if指令 ~区分大小写,~*不区分大小写  
  59.                     if ( $http_user_agent ~* "nokia" )  
  60.                     {  
  61.                         set $ismob 1;  
  62.                         #break;跳出  
  63.                         proxy_pass http://wap.ttpod.com;  
  64.                     }  
  65.                         #空的UA默认为手机访问,^为起始位置,$为结束位置。  
  66.                         if ( $http_user_agent ~ ^$ )  
  67.                         {  
  68.                             set $ismob 1;  
  69.                             proxy_pass http://wap.ttpod.com;  
  70.                         }  
  71.                         #跳转到负载均衡设置中。  
  72.                             proxy_pass http://ttpod;  
  73.                     proxy_redirect default;  
  74.                     }  
  75.                 }  
  76.         }  
 

猜你喜欢

转载自huanglz19871030.iteye.com/blog/1344529