nginx由受配置文件中指定的指令控制的模块组成nginx
伪指令分为简单伪指令和块伪指令正则表达式
简单的指令由名称和参数组成,这些名称和参数之间用空格分隔,并以分号(;)结尾数组
块指令的结构 与 简单指令的结构相同,可是它以分号(而不是分号)结尾,并带有一组用花括号({和})括起来的附加指令服务器
若是块指令能够在括号内包含其余指令,则将其称为上下文(示例:事件,http,服务器和位置)。spa
放置在任何上下文外部的配置文件中的指令都被视为在主上下文中。 事件和http指令位于主上下文中,服务器位于http中,而且位于服务器中。代理
井号(#)后面的全部内容属于注释。code
简单指令server
worker_processes 1;
user nobody;
块指令blog
events {
worker_connections 1024;
}
提供静态文件的含义即:设置查找文件的路径,设置索引文件。索引
示例:
worker_processes 1; events { worker_connections 1024; }
http { server { location / { root /data/www; } location /images/ { root /data; } } }
服务器块讲解以下:
示例:设置简单的站点代理
worker_processes 1; events { worker_connections 1024; } http { server { location / { proxy_pass http://localhost:8080; } location /images/ { root /data; } } server { listen 8080; root /data/up1; location / { } } }
服务器块(代理)讲解:
示例:设置一个简单的正则表达式进行文件匹配
worker_processes 1; events { worker_connections 1024; } http { server { location / { proxy_pass http://localhost:8080; } location ~ \.(gif|jpg|png)$ { root /data/images; } } server { listen 8080; root /data/up1; location / { } } }
正则表达式讲解: