免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 12197 | 回复: 6
打印 上一主题 下一主题

[Web] apache的timeout为何不起作用? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-06-06 10:45 |只看该作者 |倒序浏览
我在http.conf配置了timeout 2 秒

我的client在与apache建立连接后,故意sleep(5) 之后我在send

为何apache在超过2秒后,不把这个连接给断开而是等到在5秒后收到了client的send 来的东东!!!

请指教

[ 本帖最后由 alibase 于 2007-6-6 10:49 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2007-06-06 11:11 |只看该作者
自己先顶一下,别down

[ 本帖最后由 alibase 于 2007-6-6 14:47 编辑 ]

论坛徽章:
0
3 [报告]
发表于 2007-06-11 09:06 |只看该作者
没高人指教???

:(

论坛徽章:
5
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:53:172015亚冠之水原三星
日期:2015-06-02 16:34:202015年亚冠纪念徽章
日期:2015-10-19 18:13:37程序设计版块每日发帖之星
日期:2015-11-08 06:20:00
4 [报告]
发表于 2007-06-11 12:52 |只看该作者
注意下面的HTTP交互内容,它们是在同一个连接上顺序完成的

  1. 请求头1
  2. GET /loginbox.php HTTP/1.1
  3. Accept: */*
  4. Referer: http://www.chinaunix.net/
  5. Accept-Language: zh-cn
  6. User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; Maxthon)
  7. Host: bbs.chinaunix.net
  8. Connection: Keep-Alive
  9. Cookie: XXXXXXXXXXXXXXXXXX

  10. 回复头1
  11. HTTP/1.1 200 OK
  12. Date: Mon, 11 Jun 2007 04:38:57 GMT
  13. Server: Apache/2.0.54 (Unix) PHP/5.2.0
  14. X-Powered-By: PHP/5.2.0
  15. Cache-Control: no-cache, must-revalidate
  16. Pragma: no-cache
  17. Content-Length: 1420
  18. Keep-Alive: timeout=15, max=100
  19. Connection: Keep-Alive
  20. Content-Type: text/html; charset=GB2312



  21. 回复内容1
  22. ####################
  23. ####################
  24. ####################
  25. ####################
  26. ####################

  27. {timeout 是这段时间}

  28. 请求头2
  29. GET /viewthread.php?tid=947518 HTTP/1.1
  30. Accept: */*
  31. Referer: http://www.chinaunix.net/
  32. Accept-Language: zh-cn
  33. User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; Maxthon)
  34. Host: bbs.chinaunix.net
  35. Connection: Keep-Alive
  36. Cookie:

  37. 回复头2
  38. HTTP/1.1 200 OK
  39. Date: Mon, 11 Jun 2007 04:39:03 GMT
  40. Server: Apache/2.0.54 (Unix) PHP/5.2.0
  41. X-Powered-By: PHP/5.2.0
  42. Set-Cookie: XXXXXXXXXXXXXXXXXX
  43. Set-Cookie: XXXXXXXXXXXXXXXXXX
  44. Set-Cookie: XXXXXXXXXXXXXXXXXX
  45. Set-Cookie: XXXXXXXXXXXXXXXXXX
  46. Keep-Alive: timeout=15, max=99
  47. Connection: Keep-Alive
  48. Transfer-Encoding: chunked
  49. Content-Type: text/html; charset=GB2312

  50. 回复内容2
  51. ####################
  52. ####################
  53. ####################
  54. ####################
  55. ####################

复制代码


Apache中timeout的值指的是Keep-Alive: timeout=15, max=99,也就是它告诉浏览器在同一个连接上前后请求之间的最大时间间隔,而不是同一个请求的连接等待或数据等待的时间,尤其是在自己写服务器的时候要防止只连接不交互数据的恶意连接

[ 本帖最后由 xinglp 于 2007-6-11 12:53 编辑 ]

论坛徽章:
0
5 [报告]
发表于 2007-06-13 18:29 |只看该作者
感谢xinglp

在apache中有没有这样的超时:如果一个连接时间长了的timeout, 即像你所说的只连接不交互数据的恶意连接
对于这种连接我设个时间,如果时间一到我就关闭该连接
如果没有,你有什么好的高效建议?

thank you!

论坛徽章:
0
6 [报告]
发表于 2011-09-07 15:36 |只看该作者
回复 4# xinglp


    你好xinglp!!请问下。在apache全局配置中有个timeout的配置选项,这个选项应该怎么调整呢。而且这个调整在哪些方面能得到体现。全局配置中的keepalive的机制。这个配置我自己做过测试。发现用户连接到网页后,如果没有和网站上的其他内容给进行交互的情况下,TCP连接会在keepalivetimeout到达的时候自动断开TCP连接。这个keepalive机制和timeout机制有什么联系吗?求教了。~~~~~~

论坛徽章:
5
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:53:172015亚冠之水原三星
日期:2015-06-02 16:34:202015年亚冠纪念徽章
日期:2015-10-19 18:13:37程序设计版块每日发帖之星
日期:2015-11-08 06:20:00
7 [报告]
发表于 2011-09-15 13:55 |只看该作者
http协议里面的keep-alive就是告诉浏览器, 保持多长时间的连接
timeout是超时检测, 表示多长时间没活跃就断开

个人见解,  以rfc文档和软件的具体行为为准,
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP