3

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

现在我在想这个:

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

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

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

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

PHP Pros:你通常如何处理这个问题?

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

4

1 回答 1

1

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

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

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

PS与 node.js 中的最大请求长度重复的可能性

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

于 2012-12-04T03:13:20.193 回答