摘要:上次写了一篇nginx+php-fpm优化上传,一位博友留言介绍了,第三方nginx upload modulehttp://www.grid.net.ru/nginx/upload.en.html看了一下,功能蛮强大的,所以就记录下来·基本没什么变化,在原有的例子上稍加了下修改,加了一个限速功能。...
阅读全文
12 2014 档案
摘要:1、安装模块1cd/data/software2wgethttp://www.grid.net.ru/nginx/download/nginx_upload_module-2.0.12.tar.gz3tarzxvf nginx_upload_module-2.0.12.tar.gz进入nginx源码...
阅读全文
摘要:本文的实验环境为:Centos4.5,nginx版本为:nginx-0.7.26pcre-7.8.tar.gz 正则表达式下载地址:ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/ nginx-0.7.26.tar下载地址:http://w...
阅读全文
摘要:1. Nginx 介绍Nginx是俄罗斯人编写的十分轻量级的HTTP服务器,它的发音为“engine X”, 是一个高性能的HTTP和反向代理服务器,同时也是一个IMAP/POP3/SMTP 代理服务器.Nginx是由俄罗斯人 Igor Sysoev为俄罗斯访问量第二的 Rambler.ru站点开发...
阅读全文
摘要:关于Nginx Http模块开发的文章非常少,只有Emiler的那篇关于Http模块的文章,但是那篇文章里面,并没有说到事件型的模块如何进行开发。而且文章里面提到的内容实在是让人有点意犹未尽。因此,对于Http事件型模块的开发进行了一些总结,与大家分享。但是,无论如何,要进行Nginx模块开发,最好...
阅读全文
摘要:> 您好!> 我想请问下nginx模块里面怎么获取post参数,能有具体的代码更好!谢谢>对于 "application/x-www-form-urlencoded" 格式的 POST 参数获取,可以参考 ngx_lua 模块的ngx.req.get_post_args() 函数以及 ngx_f...
阅读全文
摘要: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/...
阅读全文
摘要:nginx可以轻松实现根据不同的url 或者 get参数来转发到不同的服务器,然而当我们需要根据http包体来进行请求路由时,nginx默认的配置规则就捉襟见肘了,但是没关系,nginx提供了强大的自定义模块功能,我们只要进行需要的扩展就行了。我们来理一下思路,我们的需求是:nginx根据http包...
阅读全文
摘要:关于nginx代码解析,我师兄雕梁的博客(http://simohayha.javaeye.com)有一系列的文章可以阅读。我这里将只介绍他博客里没有关注到的或者讲述不详细的,但是我个人又认为是nginx里面比较重要的东西。在这一篇文章里,我将介绍nginx关于location的处理,大家都知道Ng...
阅读全文
摘要:在ngx_http_process_request_line函数中,解析完请求行之后,如果请求行的uri里面包含了域名部分,则将其保持在请求结构的headers_in成员的server字段,headers_in用来保存所有请求头,它的类型为ngx_http_headers_in_t:[cpp]vie...
阅读全文
摘要:今年我们组计划写一本nginx模块开发以及原理解析方面的书,整本书是以open book的形式在网上会定时的更新,网址为http://tengine.taobao.org/book/index.html。本书分析的nginx源码版本为1.2.0,环境为linux,事件处理模型为epoll,大部分分析...
阅读全文
摘要:2,丢弃请求体一个模块想要主动的丢弃客户端发过的请求体,可以调用nginx核心提供的ngx_http_discard_request_body()接口,主动丢弃的原因可能有很多种,如模块的业务逻辑压根不需要请求体 ,客户端发送了过大的请求体,另外为了兼容http1.1协议的pipeline请求,模块...
阅读全文
摘要:上节说到nginx核心本身不会主动读取请求体,这个工作是交给请求处理阶段的模块来做,但是nginx核心提供了ngx_http_read_client_request_body()接口来读取请求体,另外还提供了一个丢弃请求体的接口-ngx_http_discard_request_body(),在请求...
阅读全文
摘要:1.Nginx的配置文件默认在Nginx程序安装目录的conf二级目录下,主配置文件为nginx.conf.假设您的Nginx安装在/usr/local/webserver/nginx/目录下,那么默认的主配置文件则为/usr/local/webserver/nginx/nginx.conf.2.N...
阅读全文
摘要:1.Nginx配置文件主要组成:main(全局配置)这部分的指令将影响其他所有部分.server(虚拟主机配置)这部分指令主要用于指定虚拟主机域名,IP和端口.upstream(主要为反向代理,负载均衡相关配置)这部分指令用于设置反向代理及后端服务器的负载均衡.location(目录匹配配置)这部分...
阅读全文
摘要:1.HTTP的核心模块.这些HTTP模块会在编译Nginx时自动编译进来,除非使用configure命令禁止编译这些模块.(1)alias指令.该指令用于在URL和文件系统路径之间实现映射.它与root指令类似,但是网页文件的root根目录不会改变,改变的只是请求URL的文件系统路径.语法:alia...
阅读全文
摘要:环境:Win7 64位+VC2008软件及源码下载:(http://pan.baidu.com/s/1jGE52pK)涉及到的知识点:C++多线程编程libcurl的使用(包括发送http请求、发送cookie给服务器、保存cookie)关于libcurl的资料,推荐大家参考下官方文档:http:/...
阅读全文
摘要:[cpp]view plaincopy#include#include#include#include#include#defineTMP_FILE"tmp.html"#defineHTML_BUFFER_SIZE1024*800voidsplit(char**arr,char*str,constc...
阅读全文
摘要:一、概念1.为什么要使用libcurl1)作为http的客户端,可以直接用socket连接服务器,然后对到的数据进行http解析,但要分析协议头,实现代理…这样太麻烦了。2)libcurl是一个开源的客户端url传输库,支持 FTP,FTPS,TFTP,HTTP,HTTPS,GOPHER,TELNE...
阅读全文
摘要:最近在学习libcurl,并利用它提交POST请求,可是返回的响应总是无从验证该次POST请求是否成功提交了。1. 先看下根据firebug提交的一次成功的请求,这里以login我喜欢上的xiami为例,嘻嘻~1.1本次POST请求的HTTP交互1.2 POST1.3经server端redirect...
阅读全文
摘要:安装前,最好能保证依赖的系统软件已经升级。 yum updateCentOS上安装Nginx,如果只是简单安装,不附加其他第三方模块,一句话可以搞定: yum install nginx但是如果需要添加第三方的module则需要下载源码并重新编译安装了。(也可能有简单方法,本人不知,如果真有,还请路...
阅读全文
摘要:紧跟在post-access阶段之后的是try-files阶段。这个阶段专门用于实现标准配置指令try_files的功能,并不支持 Nginx 模块注册处理程序。由于try_files指令在许多 FastCGI 应用的配置中都有用到,所以我们不妨在这里简单介绍一下。try_files指令接受两个以上...
阅读全文
摘要:运行在post-rewrite阶段之后的是所谓的preaccess阶段。该阶段在access阶段之前执行,故名preaccess.标准模块ngx_limit_req和ngx_limit_zone就运行在此阶段,前者可以控制请求的访问频度,而后者可以限制访问的并发度。这里我们仅仅和它们打个照面,后面还...
阅读全文
摘要:紧接在server-rewrite阶段后边的是find-config阶段。这个阶段并不支持 Nginx 模块注册处理程序,而是由 Nginx 核心来完成当前请求与location配置块之间的配对工作。换句话说,在此阶段之前,请求并没有与任何location配置块相关联。因此,对于运行在find-co...
阅读全文
摘要:前面我们详细讨论了rewrite、access和content这三个最为常见的 Nginx 请求处理阶段,在此过程中,也顺便介绍了运行在这三个阶段的众多 Nginx 模块及其配置指令。同时可以看到,请求处理阶段的划分直接影响到了配置指令的执行顺序,熟悉这些阶段对于正确配置不同的 Nginx 模块并实...
阅读全文
摘要:来看一个ngx_static模块服务磁盘文件的例子。我们使用下面这个配置片段:location/{root/var/www/;}同时在本机的/var/www/目录下创建两个文件,一个文件叫做index.html,内容是一行文本thisismyhome;另一个文件叫做hello.html,内容是一行文...
阅读全文
摘要:下面以教程系列为单位,列举出了已经发表和计划发表的连载教程:Nginx 新手起步Nginx 是如何匹配 URI 的Nginx 变量漫谈Nginx 配置指令的执行顺序Nginx 的 if 是邪恶的Nginx 子请求Nginx 静态文件服务Nginx 的日志服务基于 Nginx 的应用网关基于 Ngin...
阅读全文
摘要:前面我们在(五)中提到,在一个location中使用content阶段指令时,通常情况下就是对应的 Nginx 模块注册该location中的“内容处理程序”。那么当一个location中未使用任何content阶段的指令,即没有模块注册“内容处理程序”时,content阶段会发生什么事情呢?谁又来...
阅读全文
摘要:Nginx 的content阶段是所有请求处理阶段中最为重要的一个,因为运行在这个阶段的配置指令一般都肩负着生成“内容”(content)并输出 HTTP 响应的使命。正因为其重要性,这个阶段的配置指令也异常丰富,例如前面我们一直在示例中广泛使用的echo指令,在Nginx 变量漫谈(二)中接触到的...
阅读全文
摘要:ngx_lua模块提供了配置指令access_by_lua,用于在access请求处理阶段插入用户 Lua 代码。这条指令运行于access阶段的末尾,因此总是在allow和deny这样的指令之后运行,虽然它们同属access阶段。一般我们通过access_by_lua在ngx_access这样的模...
阅读全文
摘要:如前文所述,除非像ngx_set_misc模块那样使用特殊技术,其他模块的配置指令即使是在rewrite阶段运行,也不能和ngx_rewrite模块的指令混合使用。不妨来看几个这样的例子。第三方模块ngx_headers_more提供了一系列配置指令,用于操纵当前请求的请求头和响应头。其中有一条名叫...
阅读全文
摘要:我们前面已经知道,当set指令用在location配置块中时,都是在当前请求的rewrite阶段运行的。事实上,在此上下文中,ngx_rewrite模块中的几乎全部指令,都运行在rewrite阶段,包括Nginx 变量漫谈(二)中介绍过的rewrite指令。不过,值得一提的是,当这些指令使用在ser...
阅读全文
摘要:大多数 Nginx 新手都会频繁遇到这样一个困惑,那就是当同一个location配置块使用了多个 Nginx 模块的配置指令时,这些指令的执行顺序很可能会跟它们的书写顺序大相径庭。于是许多人选择了“试错法”,然后他们的配置文件就时常被改得一片狼藉。这个系列的教程就旨在帮助读者逐步地理解这些配置指令背...
阅读全文
摘要:其实这两年为 Nginx 世界做了这么多的事情,一直想通过一系列教程性的文章把我的那些工作成果和所学所知都介绍给更多的朋友。现在终于下决心在新浪博客http://blog.sina.com.cn/openresty上面用中文写点东西,每一篇东西都会有一个小主题,但次序和组织上就不那么讲究了,毕竟并不...
阅读全文
摘要:与$arg_XXX类似,我们在(二)中提到过的内建变量$cookie_XXX变量也会在名为XXX的 cookie 不存在时返回特殊值“没找到”:location/test{content_by_lua'ifngx.var.cookie_user==nilthenngx.say("cookieuser...
阅读全文
摘要:在(一)中我们提到过,Nginx 变量的值只有一种类型,那就是字符串,但是变量也有可能压根就不存在有意义的值。没有值的变量也有两种特殊的值:一种是“不合法”(invalid),另一种是“没找到”(not found)。举例说来,当 Nginx 用户变量$foo创建了却未被赋值时,$foo的值便是“不...
阅读全文
摘要:Nginx 内建变量用在“子请求”的上下文中时,其行为也会变得有些微妙。前面在(三)中我们已经知道,许多内建变量都不是简单的“存放值的容器”,它们一般会通过注册“存取处理程序”来表现得与众不同,而它们即使有存放值的容器,也只是用于缓存“存取处理程序”的计算结果。我们之前讨论过的$args变量正是通过...
阅读全文
摘要:前面在(二)中我们已经了解到变量值容器的生命期是与请求绑定的,但是我当时有意避开了“请求”的正式定义。大家应当一直默认这里的“请求”都是指客户端发起的 HTTP 请求。其实在 Nginx 世界里有两种类型的“请求”,一种叫做“主请求”(main request),而另一种则叫做“子请求”(subre...
阅读全文
摘要:在设置了“取处理程序”的情况下,Nginx 变量也可以选择将其值容器用作缓存,这样在多次读取变量的时候,就只需要调用“取处理程序”计算一次。我们下面就来看一个这样的例子:map$args$foo{default0;debug1;}server{listen8080;location/test{set...
阅读全文
摘要:也有一些内建变量是支持改写的,其中一个例子是$args. 这个变量在读取时返回当前请求的 URL 参数串(即请求 URL 中问号后面的部分,如果有的话 ),而在赋值时可以直接修改参数串。我们来看一个例子:location/test{set$orig_args$args;set$args"a=3&b=...
阅读全文
摘要:关于 Nginx 变量的另一个常见误区是认为变量容器的生命期,是与location配置块绑定的。其实不然。我们来看一个涉及“内部跳转”的例子:server{listen8080;location/foo{set$ahello;echo_exec/bar;}location/bar{echo"a=[$...
阅读全文
摘要:Nginx 的配置文件使用的就是一门微型的编程语言,许多真实世界里的 Nginx 配置文件其实就是一个一个的小程序。当然,是不是“图灵完全的”暂且不论,至少据我观察,它在设计上受 Perl 和 Bourne Shell 这两种语言的影响很大。在这一点上,相比 Apache 和 Lighttpd 等其...
阅读全文
摘要:1. Nginx 介绍Nginx是俄罗斯人编写的十分轻量级的HTTP服务器,它的发音为“engine X”, 是一个高性能的HTTP和反向代理服务器,同时也是一个IMAP/POP3/SMTP 代理服务器.Nginx是由俄罗斯人 Igor Sysoev为俄罗斯访问量第二的 Rambler.ru站点开发...
阅读全文
摘要:一.nginxuploadmodule原理官方文档:http://www.grid.net.ru/nginx/upload.en.htmlNginxuploadmodule通过nginx服务来接受用户上传的文件,自动解析请求体中存储的所有文件上传到upload_store指定的目录下。这些文件信息从...
阅读全文
摘要:解决nginx上传模块nginx_upload_module传递GET参数的方法总结最近用户反映我们的系统只能上传50M大小的文件,希望能够支持上传更大的文件。很显然PHP无法轻易实现大文件上传,因为会有各种各样的郁闷问题,比如服务器超时等,那么如何解决呢?我想到了nginx_upload_modu...
阅读全文
摘要:现在的网站,总会有一点与用户交互的功能,例如允许用户上传头像,上传照片,上传附件这类的。PHP写的程序,对于上传文件效率不是很高。幸好,nginx有一个名为upload的module可以解决这个问题。网络上已经有很多关于upload module的文章,但是大部分都是介绍编译安装这些的,对于一些细节...
阅读全文
摘要:传统站点在处理文件上传请求时,普遍使用后端编程语言处理,如:Java、PHP、Python、Ruby等。今天给大家介绍Nginx的一个模块,Upload Module上传模块,此模块的原理是先把用户上传的文件保存到临时文件,然后在交由后台页面处理,并且把文件的原名,上传后的名称,文件类型,文件大小s...
阅读全文
摘要:nginx上传模块一. nginx upload module原理官方文档:http://www.grid.net.ru/nginx/upload.en.htmlNginx upload module通过nginx服务来接受用户上传的文件,自动解析请求体中存储的所有文件上传到upload_store...
阅读全文
摘要:前段时间做一个项目,需要上传文件,差不多需要20M左右,普通用php处理会比较麻烦,经常超时,而且大量占用资源。于是搜索了下,决定用nginx的upload上传模块来处理。你可以在这里:http://www.grid.net.ru/nginx/upload.en.html 获取源码。下载以后需要重新...
阅读全文
摘要:关于一些对location认识的误区1、location的匹配顺序是“先匹配正则,再匹配普通”。矫正:location的匹配顺序其实是“先匹配普通,再匹配正则”。我这么说,大家一定会反驳我,因为按“先匹配普通,再匹配正则”解释不了大家平时习惯的按“先匹配正则,再匹配普通”的实践经验。这里我只能暂时解...
阅读全文
摘要:最近一段时间在学习 Nginx ,以前一直对 Nginx 的 Location 配置很头大,最近终于弄出点眉目。总结如下:nginx 配置文件,自下到上分为三种层次分明的结构:| http block the protocol level| server block the server lev...
阅读全文
摘要:目录:1概述1.1RTSP简介1.2协议特点2协议细节2.1典型的rtsp交互过程2.2RTSP消息格式2.3方法定义2.4消息头定义2.5状态码3rtsp中常用方法举例4SDP协议概述4.1简介4.2SDP协议格式4.3SDP协议举例说明1概述1.1RTSP简介RTSP(Real Time Str...
阅读全文
摘要:上一篇文章我们介绍了如何用一个简单的UDP socket搭建一个RTP服务器。我把这份80行的代码呈现到客户面前的时候,就有人不满意了。还有人在参考的时候会问:“楼主你的TS格式的文件是哪里来的?应该去哪里下载?”“这也太简单了吧,不就是用UDP把TS文件发过去么?就这么几十行代码也算个大作业?”“...
阅读全文
摘要:上一篇文章我们介绍了关于RTP协议的知识,那么我们现在就自己写一个简单的传输TS流媒体的RTP服务器吧。预备知识关于TS流的格式:TS流封装的具体格式请参考文档ISO/IEC 13818-1。这里我们只需要了解一些简单的信息就好。首先TS流是有许多的TS Packet组成的,每个TS Packet的...
阅读全文
摘要:本文会带领着你一步步动手实现一个简单的RTP传输服务器,旨在了解RTP流媒体传输协议以及一些关于多媒体编解码的知识。关于RTP协议的必备知识要动手实现一个协议,当然首先需要阅读该协议的文档。RTP协议的文档,有rfc1889、rfc1890、rfc3550,其中rfc3550是现在的版本,另外两个是...
阅读全文
摘要:自8月份以来一直埋头学习P2P在音/视频直播、点播上的学习,受到不少网友的帮助,在此也留下自己学到的一点点的经验。 第一个接触的开源项目是peercast,应该说上手非常快,这必须感谢王浩聪的注释版,稍做调整后便架起了自己的广播平台,运行起来效果也很理想。于是尝试发布视频流,在局域网内测试未发现问题...
阅读全文
摘要:Sockets tcp/ip communication libraryC++ Sockets LibraryThis is a GPL licensed C++ class library wrapping the berkeley sockets C API, and therefore wor...
阅读全文
摘要:最近跟着公司的项目走,我也研究了不少东西,尤其是在P2P方面,广泛涉猎各种开源项目,尤其是国外的开源项目,意外的发现了一个国内的项目,做的还不错,推荐一下。---------------------使用平台:客户端:Windows 平台服务器:Windows & Linux框架图例:项目简介:P2P...
阅读全文
摘要:前言最近研究了一下Windows平台下的视音频播放的技术。在Windows平台下的视频播放技术主要有以下三种:GDI,Direct3D和OpenGL;音频播放技术主要是DirectSound。这些技术属于比较底层的技术,因此使用起来相对来说还是比较复杂的。我在学习的过程中也发现这一领域一直缺少比较简...
阅读全文
摘要:本文记录SDL播放音频的技术。在这里使用的版本是SDL2。实际上SDL本身并不提供视音频播放的功能,它只是封装了视音频播放的底层API。在Windows平台下,SDL封装了Direct3D这类的API用于播放视频;封装了DirectSound这类的API用于播放音频。因为SDL的编写目的就是简化视音...
阅读全文
摘要:本文记录DirectSound播放音频的技术。DirectSound是Windows下最常见的音频播放技术。目前大部分的音频播放应用都是通过DirectSound来播放的。本文记录一个使用DirectSound播放PCM的例子。注:一位仁兄已经提醒我DirectSound已经计划被XAudio2取代...
阅读全文
摘要:本文记录SDL播放视频的技术。在这里使用的版本是SDL2。实际上SDL本身并不提供视音频播放的功能,它只是封装了视音频播放的底层API。在Windows平台下,SDL封装了Direct3D这类的API用于播放视频;封装了DirectSound这类的API用于播放音频。因为SDL的编写目的就是简化视音...
阅读全文
摘要:本文记录OpenGL播放视频的技术。上一篇文章中,介绍了一种简单的使用OpenGL显示视频的方式。但是那还不是OpenGL显示视频技术的精髓。和Direct3D一样,OpenGL更好的显示视频的方式也是通过纹理(Texture)。本文介绍OpenGL通过纹理的方式显示视频的技术。OpenGL中坐标和...
阅读全文
摘要:本文记录OpenGL播放视频的技术。OpenGL是一个和Direct3D同一层面的技术。相比于Direct3D,OpenGL具有跨平台的优势。尽管在游戏领域,DirectX的影响力已渐渐超越OpenGL并被大多数PC游戏开发商所采用,但在专业高端绘图领域,OpenGL因为色彩准确,仍然是不能被取代的...
阅读全文
摘要:本文接着上一篇文章继续记录Direct3D(简称D3D)播放视频的技术。上一篇文章中已经记录了使用Direct3D中的Surface渲染视频的技术。本文记录一种稍微复杂但是更加灵活的渲染视频的方式:使用Direct3D中的Texture(纹理)渲染视频。纹理有关的基础知识在记录使用Direct3D的...
阅读全文
摘要:上一篇文章记录了GDI播放视频的技术。打算接下来写两篇文章记录Direct3D(简称D3D)播放视频的技术。Direct3D应该Windows下最常用的播放视频的技术。实际上视频播放只是Direct3D的“副业”,它主要用于3D游戏制作。当前主流的游戏几乎都是使用Direct3D制作的,例如《地下城...
阅读全文
摘要:前一篇文章对“Simplest Media Play”工程作了概括性介绍。后续几篇文章打算详细介绍每个子工程中的几种技术。在记录Direct3D,OpenGL这两种相对复杂的技术之前,打算先记录一种和它们属于同一层面的的简单的技术——GDI作为热身。GDI简介下面这段文字摘自维基百科:图形设备接口(...
阅读全文
摘要:HTTP是很常见的协议,虽然用得很多,但对细节的了解却是很浅,这回通过向服务端上传文件信息来理解细节。网络库的选择:1、WinHTTP是windows下常用的库;2、CURL是广受喜爱的开源库。对于我来说,libcurl最大的优点是使用方便,可以把注意力更多的集中到业务层上,提高工作效率,避免重造轮...
阅读全文
摘要:最近在需要使用curl的上传功能,使用libCurl来实现。因此,先使用curl命令操作,然后再使用libCurl实现。基于Http协议的文件上传的标准方法是: 基于POST Form的文件上传 RFC1867。这个方法使用非常广泛,这个RFC规定了FORM上传文件的标准方法,如下介绍了基于libc...
阅读全文
摘要:不多说了,curl的http上传文件代码示例,有需要的可以参考。int http_post_file(const char *url, const char *user, const char *pwd, const char *filename){ assert(url != NULL); ass...
阅读全文
摘要:为了具有通用性,将文件的内容读到了fc变量中,fclen是fc的长度。fc也可以是任何其它内容。curl 是 libcurl句柄。演示省略了很多显而易见的步骤。1. 普通的post请求,这里用curl_easy_escape对fc做了编码std::string data("req=plain");d...
阅读全文
摘要:原文地址:http://curl.haxx.se/libcurl/c/libcurl-tutorial.html 译者:JGood(http://blog.csdn.net/JGood) 译者注:这是一篇介绍如何使用libcurl的入门教程。文档不是逐字逐句按原文翻译,而是根据笔者对libcurl的...
阅读全文
摘要:原文http://justwinit.cn/post/7626/通常情况下,一般很少使用C语言来直接上传文件,但是遇到使用C语言编程实现文件上传时,该怎么做呢?借助开源的libcurl库,我们可以容易地实现这个功能。Libcurl是一个免费易用的客户端URL传输库,主要功能是用不同的协议连接和沟通不...
阅读全文
摘要:#include#include#includeintmain(intargc,char*argv[]){CURL*curl;CURLcoderes;structcurl_httppost*formpost=NULL;structcurl_httppost*lastptr=NULL;structcu...
阅读全文
摘要:一、LibCurl基本编程框架libcurl是一个跨平台的网络协议库,支持http, https, ftp, gopher, telnet, dict, file, 和ldap 协议。libcurl同样支持HTTPS证书授权,HTTP POST, HTTP PUT, FTP 上传, HTTP基本表单...
阅读全文
摘要:最近在做团购酒店APP分享到qzone功能,使用libcurl访问qzone的分享cgi接口,酒店分享信息以POST方式传输,在测试的时候发现分享接口平均有2s的延迟,这延迟也太大了吧,于是乎问了空间的接口人,答曰:怎么可能,这个接口的平均调用时延是100-200ms,肯定是你的代码有问题。好吧,开...
阅读全文
摘要:上篇博文讲到了如何使用multicurl来进行http并发访问,今天继续有关curl的主题,来八一八如何使用curl来上传文件,在介绍具体方法之前了解下目前http文件上传的基本实现。 rfc1867描述了如何使用http协议来上传客户端文件,目前基本上所有的浏览器和web服务器都支持http文件上...
阅读全文
摘要:自:http://blog.chinaunix.net/u1/47395/showart_1768832.html有个业务需求需要通过curl代理的方式来访问外网百度了一把,测试可以正常使用。记录下来方便后续查找example: 1. http://curl.haxx.se/libcurl/c/ex...
阅读全文