网络
文章平均质量分 69
secret丶
这个作者很懒,什么都没留下…
展开
-
适合新手的网络编程,用socket传文件(本例传的是jpg图片) 用到sendfile函数
服务器端代码:用来接受客户端发来的文件#include#include#include#include#include#include#include#includeint main(int argc,char* argv[]){assert(argc>2);FILE *filefd=fopen("a.jpg","ab");struct sock原创 2015-09-09 09:34:46 · 1098 阅读 · 2 评论 -
HTTP请求详解
一个HTTP请求报文由四个部分组成:请求行、请求头部、空行、请求数据1.请求行 请求行由请求方法字段、URL字段和HTTP协议版本字段3个字段组成,它们用空格分隔。比如 GET /data/info.html HTTP/1.1方法字段就是HTTP使用的请求方法,比如常见的GET/POST其中HTTP协议版本有两种:HTTP1.0/HTTP1.1 可以这样区别:原创 2015-09-10 17:07:19 · 2433 阅读 · 0 评论 -
http解析中的一些东西,strpbrk,strcasecmp,strncasecmp,strspn,strcspn
http解析中的一些东西:1:/t:空格/r:回车/r/n:一行结束的标志2:strpbrk():函数原型:extern char *strpbrk(char *str1, char *str2)参数说明:str1待比较的字符串,str2为指定被搜索的字符串。 所在库名:#include 函数功能:比较字符串str1和str2中是否原创 2015-09-11 09:40:59 · 545 阅读 · 0 评论 -
IO:同步、异步、阻塞、非阻塞的区别
同步(synchronous) IO和异步(asynchronous) IO,阻塞(blocking) IO和非阻塞(non-blocking)IO分别是什么,到底有什么区别?这个问题其实不同的人给出的答案都可能不同,比如wiki,就认为asynchronous IO和non-blocking IO是一个东西。这其实是因为不同的人的知识背景不同,并且在讨论这个问题的时候上下文(context)也不转载 2015-09-11 17:48:52 · 363 阅读 · 0 评论 -
epoll系列系统调用
需要包含的头文件#include1. int epoll_create(int size):在内核新建一个事件表(这是与select和poll不同的地方),返回这个事件表的文件描述符,这个文件描述符将会作为epoll系统调用的第一个参数。另外size参数并不起作用,只是给内核一个提示,它的事件表需要多大。2.int epoll_ctl(int epfd,int op,int fd,原创 2015-09-15 13:59:11 · 544 阅读 · 0 评论 -
nginx配置
Nginx配置文件常见结构的从外到内依次是「http」「server」「location」等等,缺省的继承关系是从外到内,也就是说内层块会自动获取外层块的值作为缺省值。Server接收请求的服务器需要将不同的请求按规则转发到不同的后端服务器上,在 nginx 中我们可以通过构建虚拟主机(server)的概念来将这些不同的服务配置隔离。server { listen转载 2016-08-21 00:34:19 · 758 阅读 · 0 评论