node.js如何处理故意大(和坏)的http请求

时间:2012-12-04 03:08:43

标签: php node.js

我正在研究一些使用节点的项目,我编写的每行代码都包含了很多关于某人如何破坏我的节点进程的想法。

现在我正在考虑这个问题:

require('http').createServer(function(req, res)) {
    //DEAL WITH REQUEST HERE
  }.listen(port, net);

这是设置服务器和处理请求的标准代码。

假设我想要关闭该节点进程,我可以发送带有大量数据的POST请求,node.js将花费大量时间(和带宽)来接收所有这些。

有没有办法避免这种情况?

PHP专业人士:您通常如何处理此问题?

有没有办法告诉节点或php(可能是apache)忽略来自某些IP的请求?

1 个答案:

答案 0 :(得分:1)

您可以限制http请求大小。 这是您可以使用的中间件。

https://github.com/senchalabs/connect/blob/master/lib/middleware/limit.js

http://www.senchalabs.org/connect/middleware-limit.html

P.S。来自maximum request lengths in node.js

的可能性重复

要获取node.js中的IP地址,您可以尝试request.connection.remoteAddress