DoubleLi

qq: 517712484 wx: ldbgliet

  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 :: 管理 ::

2014年12月21日

摘要: 1. Nginx 介绍Nginx是俄罗斯人编写的十分轻量级的HTTP服务器,它的发音为“engine X”, 是一个高性能的HTTP和反向代理服务器,同时也是一个IMAP/POP3/SMTP 代理服务器.Nginx是由俄罗斯人 Igor Sysoev为俄罗斯访问量第二的 Rambler.ru站点开发... 阅读全文
posted @ 2014-12-21 22:50 DoubleLi 阅读(647) 评论(0) 推荐(0)

摘要: 关于Nginx Http模块开发的文章非常少,只有Emiler的那篇关于Http模块的文章,但是那篇文章里面,并没有说到事件型的模块如何进行开发。而且文章里面提到的内容实在是让人有点意犹未尽。因此,对于Http事件型模块的开发进行了一些总结,与大家分享。但是,无论如何,要进行Nginx模块开发,最好... 阅读全文
posted @ 2014-12-21 22:31 DoubleLi 阅读(575) 评论(0) 推荐(0)

摘要: > 您好!> 我想请问下nginx模块里面怎么获取post参数,能有具体的代码更好!谢谢>对于 "application/x-www-form-urlencoded" 格式的 POST 参数获取,可以参考 ngx_lua 模块的ngx.req.get_post_args() 函数以及 ngx_f... 阅读全文
posted @ 2014-12-21 22:02 DoubleLi 阅读(14412) 评论(0) 推荐(0)

摘要: ownload:http://www.grid.net.ru/nginx/download/nginx_upload_module-2.2.0.tar.gzconfigure and make :./configure--user=www--group=www--prefix=/usr/local/... 阅读全文
posted @ 2014-12-21 22:01 DoubleLi 阅读(13337) 评论(0) 推荐(0)

摘要: nginx可以轻松实现根据不同的url 或者 get参数来转发到不同的服务器,然而当我们需要根据http包体来进行请求路由时,nginx默认的配置规则就捉襟见肘了,但是没关系,nginx提供了强大的自定义模块功能,我们只要进行需要的扩展就行了。我们来理一下思路,我们的需求是:nginx根据http包... 阅读全文
posted @ 2014-12-21 22:00 DoubleLi 阅读(7620) 评论(0) 推荐(1)

摘要: 关于nginx代码解析,我师兄雕梁的博客(http://simohayha.javaeye.com)有一系列的文章可以阅读。我这里将只介绍他博客里没有关注到的或者讲述不详细的,但是我个人又认为是nginx里面比较重要的东西。在这一篇文章里,我将介绍nginx关于location的处理,大家都知道Ng... 阅读全文
posted @ 2014-12-21 21:44 DoubleLi 阅读(3802) 评论(0) 推荐(0)

摘要: 在ngx_http_process_request_line函数中,解析完请求行之后,如果请求行的uri里面包含了域名部分,则将其保持在请求结构的headers_in成员的server字段,headers_in用来保存所有请求头,它的类型为ngx_http_headers_in_t:[cpp]vie... 阅读全文
posted @ 2014-12-21 21:41 DoubleLi 阅读(2793) 评论(0) 推荐(0)

摘要: 今年我们组计划写一本nginx模块开发以及原理解析方面的书,整本书是以open book的形式在网上会定时的更新,网址为http://tengine.taobao.org/book/index.html。本书分析的nginx源码版本为1.2.0,环境为linux,事件处理模型为epoll,大部分分析... 阅读全文
posted @ 2014-12-21 21:40 DoubleLi 阅读(5823) 评论(0) 推荐(0)

摘要: 2,丢弃请求体一个模块想要主动的丢弃客户端发过的请求体,可以调用nginx核心提供的ngx_http_discard_request_body()接口,主动丢弃的原因可能有很多种,如模块的业务逻辑压根不需要请求体 ,客户端发送了过大的请求体,另外为了兼容http1.1协议的pipeline请求,模块... 阅读全文
posted @ 2014-12-21 21:39 DoubleLi 阅读(1315) 评论(0) 推荐(0)

摘要: 上节说到nginx核心本身不会主动读取请求体,这个工作是交给请求处理阶段的模块来做,但是nginx核心提供了ngx_http_read_client_request_body()接口来读取请求体,另外还提供了一个丢弃请求体的接口-ngx_http_discard_request_body(),在请求... 阅读全文
posted @ 2014-12-21 21:38 DoubleLi 阅读(10596) 评论(0) 推荐(0)

摘要: 1.Nginx的配置文件默认在Nginx程序安装目录的conf二级目录下,主配置文件为nginx.conf.假设您的Nginx安装在/usr/local/webserver/nginx/目录下,那么默认的主配置文件则为/usr/local/webserver/nginx/nginx.conf.2.N... 阅读全文
posted @ 2014-12-21 21:21 DoubleLi 阅读(655) 评论(0) 推荐(0)

摘要: 1.Nginx配置文件主要组成:main(全局配置)这部分的指令将影响其他所有部分.server(虚拟主机配置)这部分指令主要用于指定虚拟主机域名,IP和端口.upstream(主要为反向代理,负载均衡相关配置)这部分指令用于设置反向代理及后端服务器的负载均衡.location(目录匹配配置)这部分... 阅读全文
posted @ 2014-12-21 21:09 DoubleLi 阅读(615) 评论(0) 推荐(0)

摘要: 1.HTTP的核心模块.这些HTTP模块会在编译Nginx时自动编译进来,除非使用configure命令禁止编译这些模块.(1)alias指令.该指令用于在URL和文件系统路径之间实现映射.它与root指令类似,但是网页文件的root根目录不会改变,改变的只是请求URL的文件系统路径.语法:alia... 阅读全文
posted @ 2014-12-21 21:00 DoubleLi 阅读(7572) 评论(0) 推荐(0)

摘要: 环境:Win7 64位+VC2008软件及源码下载:(http://pan.baidu.com/s/1jGE52pK)涉及到的知识点:C++多线程编程libcurl的使用(包括发送http请求、发送cookie给服务器、保存cookie)关于libcurl的资料,推荐大家参考下官方文档:http:/... 阅读全文
posted @ 2014-12-21 20:53 DoubleLi 阅读(632) 评论(0) 推荐(0)

摘要: [cpp]view plaincopy#include#include#include#include#include#defineTMP_FILE"tmp.html"#defineHTML_BUFFER_SIZE1024*800voidsplit(char**arr,char*str,constc... 阅读全文
posted @ 2014-12-21 20:51 DoubleLi 阅读(11540) 评论(0) 推荐(0)

摘要: 一、概念1.为什么要使用libcurl1)作为http的客户端,可以直接用socket连接服务器,然后对到的数据进行http解析,但要分析协议头,实现代理…这样太麻烦了。2)libcurl是一个开源的客户端url传输库,支持 FTP,FTPS,TFTP,HTTP,HTTPS,GOPHER,TELNE... 阅读全文
posted @ 2014-12-21 20:45 DoubleLi 阅读(660) 评论(0) 推荐(0)

摘要: 最近在学习libcurl,并利用它提交POST请求,可是返回的响应总是无从验证该次POST请求是否成功提交了。1. 先看下根据firebug提交的一次成功的请求,这里以login我喜欢上的xiami为例,嘻嘻~1.1本次POST请求的HTTP交互1.2 POST1.3经server端redirect... 阅读全文
posted @ 2014-12-21 20:40 DoubleLi 阅读(2279) 评论(0) 推荐(0)