Tag: webserver

node.js和它的服务器有多安全?

Node.js为我们提供了一个创build快速服务器的非常简单的方法,所以我们不必使用其他的,比如Apache或者IIS。 这听起来很不错,但是… node.js服务器有多安全? 我们可以比较ISS还是Apache与几年前出生的node.js? 我一直在阅读类似的问题和一些关于它的post ,他们似乎没有激发对安全性的信心。 这些post大多不是最近的。 在过去的几年中,node.js是否提高了安全性,以便能够用于安全的生产站点? 这似乎是大量使用node.js的大公司,但是…是否需要额外的努力才能保护网站? 我猜想使用Express等框架可能会对这个话题有所帮助,但是我不确定哪个范围。

node.js http-proxy负载平衡

在我的学习期间,我必须通过http-proxy(模块)创build一个包含2个nodejs webserver和1个nodejs负载均衡器的nod​​ejs webserver环境。 因此,我build立了2个节点js侦听端口8081和8082的实例。示例服务器A(localhost:8081) var args = process.argv.splice(2); var http = require('http'); function whoareU() { var n = 'A'; return n; } var server = http.createServer(function (req, res) { res.writeHead(200, {'Content-Type' : 'text/plain'}); res.end('Server: ' + whoareU()); }); server.listen(args[0] || 8081); … ServerB是类似的,只是改变了端口8082和标识符B. 另一方面,我通过http-proxy侦听端口8080构build了一个“loadbalace”实例 var http = require('http'), httpProxy = require('http-proxy'); var servers = [{host […]

一个简单的节点Web服务器

我试图做我的第一个node.js web服务器(本地),但我似乎无法得到它开始,下面是代码和错误消息。 var app = require('express'); app.configure(function(){ app.set('port', 8080); app.use(express.logger('dev')); /* 'default', 'short', 'tiny', 'dev' */ app.use(express.bodyParser()); app.use(express.static(path.join(__dirname, '/public'))); } app.listen(8080); 错误信息 app.listen(8080); ^^^ SyntaxError: Unexpected identifier at Module._compile (module.js:439:25) at Object.Module._extensions..js (module.js:474:10) at Module.load (module.js:356:32) at Function.Module._load (module.js:312:12) at Function.Module.runMain (module.js:497:10) at startup (node.js:119:16) at node.js:929:3

为什么Node.js服务器在脚本完成后不能退出?

为什么通过http.createServer作为web服务器创build的node.js应用程序不会以简单的console.log()应用程序结束后退出? 是不是因为在http模块中有一个真正的循环呢?

需要一些帮助理解nodejs和socket.io

对不起,这个问题相当无知,但是我对这两种技术有点困惑。 我在C#中编写了一个使用Fleck的networking服务器,并且一切正常,但是我意识到我可能找不到可以运行.NET应用程序的托pipe提供程序。 我想使用websockets,我发现socket.io是非常受欢迎,但我不确定它是什么。 纠正我,如果我错了,但是,它就像写一个服务器在JavaScript中,并运行与node.exe应用程序的JavaScript文件,然后服务器正在运行? 人们如何find提供这种服务的托pipe服务提供商? 最后,socket.io只是nodejs的扩展吗? 当你使用socket.io时,你必须在javascript中编写你的服务器吗? 再次,对于新手的问题感到抱歉,但我只是想在继续之前了解一些基本的东西。 谢谢。

在开源程序中encryption?

目前我正在开发一个Node.js的web服务器应用程序,然后我想提供下载和使用。 这个应用程序应该具有帐户,以便您可以login您的帐户在服务器创build的网站上。 由于这需要密码,所以我也必须考虑安全问题。 但现在,我真的不知道如何在发送和接收密码的时候保护密码。 对于存储,我只是简单地创build一个密码散列,并将散列存储在某个地方,但是传输呢? 我正在考虑SSL / https,但是这需要一个SSL证书,即使我在某个地方免费获得,我也无法在开源应用程序(?)中分享它。 我也可以以某种方式在网站上散列密码,然后把散列发送给服务器,但是我认为这也不是安全的最高标准,是吗? 考虑到没有SSL会导致更多的弊端,而不仅仅是更糟糕/没有encryption。 有任何想法吗?

节点:一个核心,许多进程

我在网上查了一下,我似乎find的所有答案都与“在多核CPU上运行如何受益”的问题有关。 但。 如果你只有一个核心的机器,你只能在任何时候运行一个进程。 (我正在考虑这里的任务调度)。 而节点使用单线程模型。 我的问题是否有任何情况下在一个核心中运行多个节点进程是有意义的? 如果这个过程是一个在端口上监听的Web服务器,那么只有一个进程可以监听,这个工作怎么可能呢?

Node.js无法加载网页连接超时

我是一个初学者node.js,我安装它在这里: https://github.com/joyent/node/wiki/Installing-Node.js-via-package-manager : https://github.com/joyent/node/wiki/Installing-Node.js-via-package-manager 我试着从控制台,它的工作原理: console.log('Hello World!'); nodejs helloConsole.js > Hello World! 然后我试图在HTTP服务器中完成这个代码: var http = require("http"); http.createServer(function (request, response) { request.on("end", function () { response.writeHead(200, { 'Content-Type': 'text/plain' }); response.end('Hello HTTP!'); }); }).listen(8080); 我从terminal运行它: nodejs hello.js 然后我打开浏览器http://localhost:8080/ ,加载需要很长时间,然后在chrome中给我: Unable to load the webpage because the server sent no data. 和Firefox给了我: The connection has timed […]

无法连接到Amazon EC2上托pipe的节点networking服务器

我正在Amazon EC2上运行一个节点应用程序。 该应用程序包括一个简单的Web服务器,旨在为索引页面,但它不起作用。 这是服务器代码: var http = require('http'), fs = require('fs'), io = require('socket.io'), index; fs.readFile('client.html', function(err, data){ if (err){ throw err; } index = data; }); var server = http.createServer(function(request, response){ response.writeHeader(200,{"Content-Type": "text/html"}); response.write(index); response.end(); }).listen(1223); EC2被分配了公共IP地址54.187.31.42 。 我运行该应用程序,打开我的浏览器,连接到54.187.31.42:1223期待被服务的网页,什么也没有。 我的服务器代码有什么问题? 我用这个答案中的代码片断来检查运行应用程序的EC2的IP,奇怪地得到172.31.3.67 – 为什么返回的地址与Amazon分配给机器的地址不同? 因此,尝试连接到172.31.3.67:1223也失败。 直接从亚马逊开发控制,如果这有助于确认它不是一个服务器IP被错误或什么的问题。

在node.js中的Webserver错误的path

我试图使用node.js作为networking服务器,我的来源被分成四个模块。 index.js server.js router.js requestHandlers.js 代码的目的是显示在/,/开始和/或上传不同的页面,而如果我键入另一个path,我应该得到错误404。但是,我发送错误,只要我发送请求到服务器。 这是我的错误: > Server has started. Request for /start received. About to route a > request for /start Request handler 'start' was called. > > http.js:852 > throw new TypeError('first argument must be a string or Buffer'); > ^ TypeError: first argument must be a string or Buffer > at […]