![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
网络
十四木
这个作者很懒,什么都没留下…
展开
-
Linux C 之搭建HTTP服务(二)
搭建服务器之处理目录 上节,(link)搭建HTTP中我们只处理了普通文件,这节,我们尝试处理一下文件夹。 要处理文件夹要明白文件夹以什么形式回馈给客户端。而且要清楚我要打开的文件夹不一样,应该反馈给客户端不一样的 我们接上节的处理。 生成html 当打开文件夹时把文件夹中的所有文件给用(html)发送出来。所以如何写html就成了问题。这里建议使用唯一的id去定义这个html。因为我们要处理的并不是一个客户端,而是多个,如果仅有一个html的话容易出现错误,一般的处理是使用时间戳去定义(当然这里看自己的原创 2020-08-27 19:57:05 · 231 阅读 · 0 评论 -
Linux C之搭建HTTP服务器(一)
HTTP请求消息 请求消息分为四部分内容 请求行(请求类型,访问资源,http的版本) 请求类型:GET和POST(绝大多数都是,还有很多如head,put,可以自己了解了解) 请求头 (附加信息) 空行 (不能省略 \r\n) 请求数据(特定的请求内容) HTTP响应消息 ...原创 2020-08-26 21:06:38 · 1001 阅读 · 0 评论 -
Linux c 使用epoll搭建TCP服务器
为什么用epoll 我们上次介绍过如何使用select去搭建TCP服务器,那一定对select的使用麻烦记忆尤深,主要还是select还是输入输出并不分离且内核和用户空间copy。想解决这种问题,可以采用poll或epoll,这样的方法,不仅解决了输入和输出分离的问题,还可以突破1024的上限,即使poll跟epoll跨平台较差,但他们优秀的性能的条件下这些都不是问题。要问他们有什么区别,一寸长,一寸强,从名字来看就知道epoll比poll更强大,他只会对活跃的连接起反应,所以在实际操作下,epoll的效率原创 2020-08-24 19:48:26 · 869 阅读 · 0 评论 -
Linux c 建立高并发服务器(select)实现
什么是select,为什么要用select 我们前面介绍过如何使用多进程的方式实现服务器,使服务器能同时和多个客户端相连接,那我可不可以使用一个进程就解决这个问题,答案是肯定的。使用select的主旨就是不让应用程序自己去监视连接,取而代之的使用内核来监视。而且select具有跨平台性,是不是觉得立马高端了不少,但是select的缺点也很明显我们后面在谈。 select的各个参数 先来看看selet这个函数 ...原创 2020-08-21 21:35:16 · 967 阅读 · 0 评论