简易web服务器
来源:互联网 发布:软件测试助理 编辑:程序博客网 时间:2024/05/22 17:42
函数介绍
init_socket:初始化网络套接字。
get_line:一次读取网络缓冲区的一行数据。
pare_request_line:解析请求行。
send_line_header:发送响应行和响应头。
send_html:发送html文件。
accept_client:线程函数,用于处理一个连接。
流程分析
代码的执行顺序为
main->init_socket->pthread_create->accept_client->get_line->parse_request_line->send_line_header->send_html
代码下载地址
http://download.csdn.net/detail/wxq714586001/8713647
效果展示
总结
- getsockname第三个参数是以指针传入的,需要将变量初始化为sizeof(struct sockaddr);
- http请求行和请求头的每一行都是以\r\n结束。
- 即便是不需要请求头,但也要将其从内核缓冲区中读出来,如果没有则会引起tcp的重传。
- 与字符’/’的比较,strcmp(“/”, path)或者strcmp(“//”, path)。前者才是正确的,’/’不是转义字符。
- 在系统调用时加错误输出代码,多敲几个字符会让你少去很多调试时间。
0 0
- 简易Web服务器
- 简易Web服务器
- 简易web服务器
- 简易Web服务器实现
- 简易Web服务器实现
- 简易web服务器
- 手写简易WEB服务器
- 简易Web服务器
- 简易线程池web服务器
- WinC++简易的web服务器
- Linux下简易web服务器实现
- Python搭建简易web服务器,超好用~
- 自己动手开发简易的Web服务器
- JAVA简易WEB服务器(一)
- JAVA简易WEB服务器(二)
- JAVA简易WEB服务器(三)
- JAVA简易WEB服务器(四)
- JAVA简易WEB服务器(五)
- PRML-系类二之2.1
- 哈希表
- FOJ 2036 Log Calculator
- Java设计模式——装饰器模式(Decorator)
- busybox命令大全
- 简易web服务器
- iOS开发中经常遇到的一些问题
- 从零开始打造一个新闻订阅APP之爬虫篇(一、背景介绍&需求分析)
- No codesigning identities found matching the provided provisioning profile jin
- ARM指令集详解(超详细!带实例!)
- Jersey---REST框架相关知识
- JFreeChart的使用
- JavaWeb使用的Servlet或者ps跳转
- JAVA 自省机制 java bean