nginx_http核心模块(二)
对一些常用的配置项做一些解释:详细请看官方文档:http://nginx.org/en/docs/http/ngx_http_core_module.html
1. alias
Syntax: alias path;
Default: —
Context: location
上边的意思:第一行语法,用法,第二行是默认值 缺省的,第三行是活动的范围是在location中的.
alias:别名,用来对位置做替换的.
location /i/ {
    alias /data/w3/images/;
}
  当请求"/i/top.gif',这个文件的时候 "/data/w3/images/top.gif"将被返回
  path 变量可以包含变量. 除了$document_root 和 $realpath_root两个变量
  如果alias应用在正则表达式定义的location,那么正则表达式必须包含捕获并且alias必须应用这些捕获的结果.
location ~ ^/users/(.+\.(?:gif|jpe?g|png))$ {
    alias /data/w3/images/$;
}
当location匹配directive的值:
location /images/ {
    alias /data/w3/images/;
}
最好使用下边的方法:
location /images/ {
    root /data/w3;
}
2.error_page
Syntax: error_page code ... [=[response]] uri;
Default: —
Context: http, server, location, if in location
 当碰到指定的错误,指定不同的URL,当前级别没有指定error_page指令将从上一级别继承.uri允许包含变量.
例如
error_page /.html;
error_page /50x.html;
 而且,可以改变响应代码为其他,使用"=response"语法,例如:
error_page = /empty.gif;
如果一个错误应答从代理服务器或者FastCGI/uwsgi/SCGI这些服务,并且这些服务会返回一些不同的相应代码(例如:200,302,401 or 404),可以应答它们返回的代码.:
error_page = /.php;
也可以使用重定向:
error_page http://example.com/forbidden.html;
error_page = http://example.com/notfound.html;
在这种情况下,默认,响应代码302返回给客户端,他只能改变一个重定向代码状态(301,302,303和307)
如果不需要改变URL,也可以使用内部重定向,通过location命名的错误处理:
location / {
    error_page  = @fallback;
}
location @fallback {
    proxy_pass http://backend;
}
如果uri处理会导致一个错误,最后发生错误的状态码返回给客户端。
3. keepalive_requests
Syntax: keepalive_requests number;
Default:
keepalive_requests ;
Context: http, server, location
This directive appeared in version 0.8..
设置最大的长连接服务数,大于这个数的请求将被关闭
3.keepalive_timeout
Syntax: keepalive_timeout timeout [header_timeout];
Default:
keepalive_timeout 75s;
Context: http, server, location
第一个参数设置了一个长连接可以在服务端停留的时间. 0 代表禁止长连接连接.第二个可选参数设置了一个值在"keep-alive:timeout=time" 响应头字段.
这个“Keep-Alive: timeout=time” 头字段被 Mozilla 和 Konqueror 认可,60秒后客户端自己断开长连接.
4. listen
Syntax: listen address[:port] [default_server] [ssl] [spdy] [proxy_protocol] [setfib=number] [fastopen=number] [backlog=number] [rcvbuf=size] [sndbuf=size] [accept_filter=filter] [deferred] [bind] [ipv6only=on|off] [reuseport] [so_keepalive=on|off|[keepidle]:[keepintvl]:[keepcnt]];
listen port [default_server] [ssl] [spdy] [proxy_protocol] [setfib=number] [fastopen=number] [backlog=number] [rcvbuf=size] [sndbuf=size] [accept_filter=filter] [deferred] [bind] [ipv6only=on|off] [reuseport] [so_keepalive=on|off|[keepidle]:[keepintvl]:[keepcnt]];
listen unix:path [default_server] [ssl] [spdy] [proxy_protocol] [backlog=number] [rcvbuf=size] [sndbuf=size] [accept_filter=filter] [deferred] [bind] [so_keepalive=on|off|[keepidle]:[keepintvl]:[keepcnt]];
Default:
listen *: | *:;
Context: server
这个语法有点多...
监听ip地址和端口.
样例:
listen 127.0.0.1:;
listen 127.0.0.1;
listen ;
listen *:;
listen localhost:; # IPv6
listen [::]:;
listen [::]; # sockets
listen unix:/var/run/nginx.sock;
默认使用80端口.
5.location
Syntax:    location [ = | ~ | ~* | ^~ ] uri { ... }
location @name { ... }
Default:     —
Context:    server, location
nginx_http核心模块(二)的更多相关文章
- MySQL启动过程详解二:核心模块启动 init_server_components()
		mysqld_main() 函数中,init_server_components() 函数负责MySQL核心模块的启动,包括mdl系统,Innodb存储引擎的启动等等: 1. mdl子系统初始化. 2 ... 
- Nodejs进阶:核心模块Buffer常用API使用总结
		本文摘录自<Nodejs学习笔记>,更多章节及更新,请访问 github主页地址.欢迎加群交流,群号 197339705. 模块概览 Buffer是node的核心模块,开发者可以利用它来处 ... 
- C#--Winform项目核心模块--考勤模块
		C#--Winform项目核心模块--考勤模块(一) C#--Winform项目核心--考勤模块(二) C#--Winform项目核心模块--考勤模块(三) 
- 【饿了么】—— Vue2.0高仿饿了么核心模块&移动端Web App项目爬坑(三)
		前言:接着上一篇项目总结,这一篇是学习过程记录的最后一篇,这里会梳理:评论组件.商家组件.优化.打包.相关资料链接.项目github地址:https://github.com/66Web/ljq_el ... 
- 【转】nginx的模块变量(HTTP核心模块变量)
		nginx的HTTP核心模块引入了大量的变量,可以在指定范围内使用这些变量的值,可以分为三类:一是客户请求头中发送的变量.二是服务器端响应头中的变量,第三是nginx产生的各种变量,我们可以使用$变量 ... 
- Python常用模块二
		一.time & datetime #_*_coding:utf-8_*_ import time # print(time.clock()) #返回处理器时间,3.3开始已废弃 , 改成了t ... 
- Zepto核心模块源代码分析
		一.Zepto核心模块架构 Zepto核心模块架构图 该图展示了Zepto核心模块架构代码的组织方式.主要分为私有变量.函数和暴露给用户的所有api. Zepto核心模块架构代码 该图展示了Zepto ... 
- Linux学习-核心与核心模块
		谈完了整个开机的流程,您应该会知道,在整个开机的过程当中,是否能够成功的驱动我们主机的硬 件配备, 是核心 (kernel) 的工作!而核心一般都是压缩文件,因此在使用核心之前,就得要将他解 压缩后, ... 
- NGINX模块(二)
		[Nginx标准HTTP模块] 一.HTTP核心模块 指令1:alias 语法:alias file-path|directory-path; 默认值:no 使用字段:location 说明:这个指令 ... 
随机推荐
- Centos+nginx+uwsgi+Python多站点环境搭建
			前言 新公司的第一个项目,服务器端打算用python作为restful api.所以需要在Centos上搭建nginx+fastcgi+python的开发环境,但后面网上很多言论都说uwsgi比fas ... 
- 微星b85(b85i b85-gaming) 系列dsdt
			从网友得了一个b85-gaming 的dsdt,发现跟我的b85i的dsdt错误都是一样的. 发布上来给需要的人参考. 微星这个系列的dsdt不能用dsdt editor的fix功能,不然文件会越来越 ... 
- python实现tailf
			# -*- coding:utf-8 -*- ''' Created on 2016年10月28日 @author: zhangsongbin ''' import time class file_r ... 
- Ubuntu12.04 下安装QQ
			1:点此下载DEB安装包http://www.longene.org/download/WineQQ2012-20120712-Longene.deb 2:打开终端输入到目录中运行命令安装. sudo ... 
- Linux系统编程(25)——终端
			在Linux系统中,用户通过终端登录系统后得到一个Shell进程,这个终端成为Shell进程的控制终端.控制终端是保存在PCB中的信息,而我们知道fork会复制PCB中的信息,因此由Shell进程启动 ... 
- HDOJ(HDU) 1491 Octorber 21st
			Problem Description HDU's 50th birthday, on Octorber 21st, is coming. What an exciting day!! As a st ... 
- Android全屏显示
			requestWindowFeature(Window.FEATURE_NO_TITLE); getWindow().setFlags(WindowManager.LayoutParams.FLAG_ ... 
- HDU_2040——判断亲和数
			Problem Description 古希腊数学家毕达哥拉斯在自然数研究中发现,220的所有真约数(即不是自身的约数)之和为: 1+2+4+5+10+11+20+22+44+55+110=284. ... 
- 关于解决Oracle登录:ora-12154:tns:无法解析指定的连接标识符
			(注:此文摘自http://www.linuxidc.com/Linux/2012-04/59322.htm) 开始学习Oracle,所以今天就打算把Oracle 10g安装下.安装完后就来进行测试是 ... 
- 探求Floyd算法的动态规划本质(转)
			---恢复内容开始--- Floyd–Warshall(简称Floyd算法)是一种著名的解决任意两点间的最短路径(All Paris Shortest Paths,APSP)的算法.从表面上粗看,Fl ... 
