Server
文章平均质量分 75
siyuan_zhu
这个作者很懒,什么都没留下…
展开
-
Nginx 变量漫谈(一)变量简介 (转载)
转载自 http://blog.sina.com.cn/openresty Nginx 的配置文件使用的就是一门微型的编程语言,许多真实世界里的 Nginx 配置文件其实就是一个一个的小程序。当然,是不是“图灵完全的”暂且不论,至少据我观察,它在设计上受 Perl 和 Bourne Shell 这两种语言的影响很大。在这一点上,相比 Apache 和 Lighttpd 等其他 Web ...原创 2015-07-26 21:11:55 · 242 阅读 · 0 评论 -
Nginx 配置指令的执行顺序(四)access_by_lua & 性能比较 (转载)
转载自 http://blog.sina.com.cn/openresty ngx_lua 模块提供了配置指令 access_by_lua,用于在 access 请求处理阶段插入用户 Lua 代码。这条指令运行于 access 阶段的末尾,因此总是在 allow 和 deny 这样的指令之后运行,虽然它们同属 access 阶段。一般我们通过 access_by_lua 在 ngx_a...原创 2015-07-29 22:14:07 · 3990 阅读 · 0 评论 -
Nginx 配置指令的执行顺序(五)content & 输出过滤器 (转载)
转载自 http://blog.sina.com.cn/openresty Nginx 的 content 阶段是所有请求处理阶段中最为重要的一个,因为运行在这个阶段的配置指令一般都肩负着生成“内容”(content)并输出 HTTP 响应的使命。正因为其重要性,这个阶段的配置指令也异常丰富,例如前面我们一直在示例中广泛使用的 echo 指令,在 Nginx 变量漫谈(二) 中接触到的...原创 2015-07-29 22:15:27 · 547 阅读 · 0 评论 -
Nginx 配置指令的执行顺序(六)静态资源服务模块 (转载)
转载自 http://blog.sina.com.cn/openresty 前面我们在 (五) 中提到,在一个 location 中使用 content 阶段指令时,通常情况下就是对应的 Nginx 模块注册该 location 中的“内容处理程序”。那么当一个 location 中未使用任何 content 阶段的指令,即没有模块注册“内容处理程序”时,content 阶段会发生什么事...原创 2015-07-29 22:21:48 · 215 阅读 · 0 评论 -
Nginx 配置指令的执行顺序(七)ngx_static 模块 (转载)
转载自 http://blog.sina.com.cn/openresty 来看一个 ngx_static 模块服务磁盘文件的例子。我们使用下面这个配置片段: location / { root /var/www/; }同时在本机的 /var/www/ 目录下创建两个文件,一个文件叫做 index.html,内容是一行文本 this is my ...原创 2015-07-29 22:26:00 · 209 阅读 · 0 评论 -
Nginx 配置指令的执行顺序(八)11个阶段(转载)
转载自 http://blog.sina.com.cn/openresty前面我们详细讨论了 rewrite、access 和 content 这三个最为常见的 Nginx 请求处理阶段,在此过程中,也顺便介绍了运行在这三个阶段的众多 Nginx 模块及其配置指令。同时可以看到,请求处理阶段的划分直接影响到了配置指令的执行顺序,熟悉这些阶段对于正确配置不同的 Nginx 模块并实现它们彼此...原创 2015-07-30 16:29:47 · 334 阅读 · 0 评论 -
Nginx 配置指令的执行顺序(九) 11个阶段2(转载)
转载自 http://blog.sina.com.cn/openresty 紧接在 server-rewrite 阶段后边的是 find-config 阶段。这个阶段并不支持 Nginx 模块注册处理程序,而是由 Nginx 核心来完成当前请求与 location 配置块之间的配对工作。换句话说,在此阶段之前,请求并没有与任何 location 配置块相关联。因此,对于运行在 find...原创 2015-07-30 16:30:01 · 217 阅读 · 0 评论 -
Nginx 配置指令的执行顺序(十)11个阶段3(转载)
转载自 http://blog.sina.com.cn/openresty 运行在 post-rewrite 阶段之后的是所谓的 preaccess 阶段。该阶段在 access 阶段之前执行,故名 preaccess. 标准模块 ngx_limit_req 和 ngx_limit_zone 就运行在此阶段,前者可以控制请求的访问频度,而后者可以限制访问的并发度。这里我...原创 2015-07-30 16:30:14 · 214 阅读 · 0 评论 -
Nginx 配置指令的执行顺序(十一)11个阶段END (转载)
转载自 http://blog.sina.com.cn/openresty 紧跟在 post-access 阶段之后的是 try-files 阶段。这个阶段专门用于实现标准配置指令 try_files 的功能,并不支持 Nginx 模块注册处理程序。由于 try_files 指令在许多 FastCGI 应用的配置中都有用到,所以我们不妨在这里简单介绍一下。 try_fi...原创 2015-07-30 16:30:26 · 208 阅读 · 0 评论 -
Nginx 配置指令的执行顺序(三)同一阶段的执行顺序 & access 阶段 (转载)
转载自 http://blog.sina.com.cn/openresty 如前文所述,除非像 ngx_set_misc 模块那样使用特殊技术,其他模块的配置指令即使是在 rewrite 阶段运行,也不能和 ngx_rewrite 模块的指令混合使用。不妨来看几个这样的例子。 第三方模块 ngx_headers_more 提供了一系列配置指令,用于操纵当前请求的请求头和...原创 2015-07-29 22:12:33 · 356 阅读 · 0 评论 -
Nginx 配置指令的执行顺序(二)同一阶段的执行顺序 (转载)
转载自 http://blog.sina.com.cn/openresty 我们前面已经知道,当 set 指令用在 location 配置块中时,都是在当前请求的 rewrite 阶段运行的。事实上,在此上下文中,ngx_rewrite 模块中的几乎全部指令,都运行在 rewrite 阶段,包括 Nginx 变量漫谈(二) 中介绍过的 rewrite 指令。不过,值得一提的是,当这些指...原创 2015-07-28 21:58:37 · 191 阅读 · 0 评论 -
Nginx 配置指令的执行顺序(一) 请求处理阶段 (转载)
转载自 http://blog.sina.com.cn/openresty 大多数 Nginx 新手都会频繁遇到这样一个困惑,那就是当同一个 location 配置块使用了多个 Nginx 模块的配置指令时,这些指令的执行顺序很可能会跟它们的书写顺序大相径庭。于是许多人选择了“试错法”,然后他们的配置文件就时常被改得一片狼藉。这个系列的教程就旨在帮助读者逐步地理解这些配置指令背后的执行时...原创 2015-07-28 13:35:10 · 266 阅读 · 0 评论 -
Nginx 内置变量
转载自 http://blog.csdn.net/iinel/article/details/4321383 HTTP核心模块支持一些内置变量,变量名与apache里的对应。比如 $http_user_agent,$http_cookie等表示HTTP请求信息的变量。更多变量:$args, 请求中的参数;$content_length, HTTP请求信息里的"Content-Len...原创 2015-07-26 21:16:37 · 99 阅读 · 0 评论 -
Nginx 变量漫谈(二)生命周期&内置变量 (转载)
转载自 http://blog.sina.com.cn/openresty 关于 Nginx 变量的另一个常见误区是认为变量容器的生命期,是与 location 配置块绑定的。其实不然。我们来看一个涉及“内部跳转”的例子: server { listen 8080; location /foo { set $a...原创 2015-07-27 13:12:03 · 826 阅读 · 0 评论 -
Nginx 变量漫谈(三)内置变量 被索引&未索引 (转载)
转载自 http://blog.sina.com.cn/openresty 也有一些内建变量是支持改写的,其中一个例子是 $args. 这个变量在读取时返回当前请求的 URL 参数串(即请求 URL 中问号后面的部分,如果有的话 ),而在赋值时可以直接修改参数串。我们来看一个例子: location /test { set $orig_args $args;...原创 2015-07-27 13:18:59 · 132 阅读 · 0 评论 -
Nginx 变量漫谈(四)取处理程序缓存 (转载)
转载自 http://blog.sina.com.cn/openresty 在设置了“取处理程序”的情况下,Nginx 变量也可以选择将其值容器用作缓存,这样在多次读取变量的时候,就只需要调用“取处理程序”计算一次。我们下面就来看一个这样的例子: map $args $foo { default 0; debug 1;...原创 2015-07-27 13:30:32 · 150 阅读 · 0 评论 -
Nginx 变量漫谈(五)主请求/子请求 (转载)
转载自 http://blog.sina.com.cn/openresty 前面在 (二) 中我们已经了解到变量值容器的生命期是与请求绑定的,但是我当时有意避开了“请求”的正式定义。大家应当一直默认这里的“请求”都是指客户端发起的 HTTP 请求。其实在 Nginx 世界里有两种类型的“请求”,一种叫做“主请求”(main request),而另一种则叫做“子请求”(subrequest...原创 2015-07-27 14:17:11 · 719 阅读 · 0 评论 -
Nginx 变量漫谈(六)主请求/子请求2 (转载)
转载自 http://blog.sina.com.cn/openresty Nginx 内建变量用在“子请求”的上下文中时,其行为也会变得有些微妙。 前面在 (三) 中我们已经知道,许多内建变量都不是简单的“存放值的容器”,它们一般会通过注册“存取处理程序”来表现得与众不同,而它们即使有存放值的容器,也只是用于缓存“存取处理程序”的计算结果。我们之前讨论过的 $args ...原创 2015-07-27 20:58:12 · 262 阅读 · 0 评论 -
Nginx 变量漫谈(七)不合法/没找到 (转载)
转载自 http://blog.sina.com.cn/openresty 在 (一) 中我们提到过,Nginx 变量的值只有一种类型,那就是字符串,但是变量也有可能压根就不存在有意义的值。没有值的变量也有两种特殊的值:一种是“不合法”(invalid),另一种是“没找到”(not found)。 举例说来,当 Nginx 用户变量 $foo 创建了却未被赋值时,$fo...原创 2015-07-28 13:21:20 · 344 阅读 · 0 评论 -
Nginx 变量漫谈(八)无题 (转载)
转载自 http://blog.sina.com.cn/openresty 与 $arg_XXX 类似,我们在 (二) 中提到过的内建变量 $cookie_XXX 变量也会在名为 XXX 的 cookie 不存在时返回特殊值“没找到”: location /test { content_by_lua ' if ngx.var.co...原创 2015-07-28 13:23:08 · 105 阅读 · 0 评论 -
jetty-maven-plugin:请求的操作无法在使用用户映射区域打开的文件上执行
解决方法一:修改Jettry包中的org/mortbay/jetty/webapp/webdefault.xml文件<init-param> <param-name>useFileMappedBuffer</param-name> <param-value>false</param-value></init-p...原创 2015-09-28 17:32:52 · 288 阅读 · 0 评论