我使用sleep(50)函数,然后请求服务器,在服务器响应之前,我关闭浏览器,但相应的响应代码仍然是200,我希望它将是499.如何创建HTTP 499请求哪个让服务器记录HTTP 499访问日志?
答案 0 :(得分:0)
您需要将整个请求发送到Nginx,然后关闭客户端连接,而Nginx正在处理响应。如果您正在请求静态文件,Nginx将非常快速地处理您的请求,并且很可能您的连接将在您的请求被完全接收且Nginx尚未提供响应的非常短的窗口之间停止。
我尝试过来自客户端的大量输入,在请求传输结束之前关闭,这只是一个错误400.你真的需要在Nginx响应处理的短时间内关闭,那个& #39;很难。
除非您使用动态语言进行响应(如通过fastcgi的PHP)来处理响应(或者nginx是您控件中某些内容的反向代理)。然后,您可以轻松地在响应方上添加sleep()
。
只需将其添加到index.php
文件的顶部:
sleep(30);
将为您提供30秒的关闭浏览器的时间窗口。
结果:
127.0.0.1 - - [21/Oct/2016:11:24:23 +0000] "GET / HTTP/1.1" 499 0 "-" "-" "-"
有效。