nginx学习笔记

来源:互联网 发布:淘宝美工工作内容介绍 编辑:程序博客网 时间:2024/06/10 04:55

基础

  • nginx由模块组成,这些模块由配置文件中指定的指令控制。
  • 指令被分为简单的指令和块指令。
  • 一个简单的指令由空格分隔的名称和参数组成,以分号结尾。
  • 块指令具有与简单指令相同的结构,但不是以分号结尾,而是以大括号包围的一组附加指令结束。
  • 如果一个块指令可以在括号内包含其他指令,则称为上下文。

例子:

http {    server {        location / {            root /data/www;        }    }}

一般来说,配置文件可能包括几个server块,它们分别通过端口和服务器名来区分。一旦nginx决定哪个服务器处理一个请求,它会根据块内定义的指令参数来测试请求头中指定的URI 。

location 指令

默认值:无,所属上下文:server,语法:

#参数有4种: = 或 ~ 或 ~* 或 ^~ location [=|~|~*|^~] /uri/ { ... }

正则表的匹配前缀:~*~。前者区分大小写,后者不区分。例子:

#匹配所有后缀为以下的资源,不区分大小写location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|mp4|ico)$ { ... }

字符串的匹配前缀:^~。例子:

#匹配以/image/开头的所有资源location ^~ /images/

匹配优先级:
1. =
2. ^~
3. ~*~
4. /

nginx如果匹配到一个,则不会再继续匹配了。