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 说明:这个指令 ...
随机推荐
- 不在界面上用控件 动态创建idhttp,IdAntiFreeze来用
不在界面上用控件 动态创建idhttp,IdAntiFreeze来用 var IdHTTP: Tidhttp; IdAntiFreeze: TidAntiFreeze; begin IdAntiFre ...
- 用C++类模板实现栈结构出现的问题以及思考
C++中使用了模板来减少方法相同但是类型不一样带来的函数重载以及大量复制代码的问题.这里主要说说类模板 类模板的定义: template<TYPENAME Type> clas ...
- 从别人写的 Object-C 中 Singleton (单例) 模式 中的一些理解--备
关于 面向对象的设计模式 对于面向对象的设计模式,想必大家并不陌生吧. 纵观23种设计模式中,数单例模式(Singleton)和工厂模式(Factory Method)最为熟悉和基础吧.当然,本文总结 ...
- BestCoder Round #36 [B] Gunner
题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=5199 先对树的高度排序,然后对每次射击高度二分查找即可,打过之后数目变为0. #include< ...
- Recommending music on Spotify with deep learning 采用深度学习算法为Spotify做基于内容的音乐推荐
本文参考http://blog.csdn.net/zdy0_2004/article/details/43896015译文以及原文file:///F:/%E6%9C%BA%E5%99%A8%E5%AD ...
- 怎样卸载goldengate
1. Log on to the database server (as oracle) where the GoldenGate software isinstalled.2. Change dir ...
- LeetCode _ Gas Station
There are N gas stations along a circular route, where the amount of gas at station i is gas[i]. You ...
- 有关autoresizingMask属性遇到的一个小问题
前言:在讲述这个小问题之前,我们有必要先了解一下UIViewAutoresizing的有关属性概念和使用详解. 参考:自动布局之autoresizingMask使用详解(Storyboard& ...
- tomcat+redis实现session共享缓存
一:linux下redis安装 1.wget http://download.redis.io/releases/redis-3.2.4.tar.gz 2.tar xzf redis-3.2.4.ta ...
- css中margin:0 auto没作用
很多初学制作网页的朋友,可能会遇到的一个常见问题,就是在CSS中加了margin:0 auto;却没有效果,不能居中的问题!margin:0 auto;的意思就是:上下边界为0,左右根据宽度自适应!其 ...