如何在我的网站服务器上运行node.js而不是我的电脑本地服务器
最近2天,我花了更多时间阅读50多篇文章和视频,以了解node.js,现在我可以通过http//:localhost:3000/
在浏览器中看到结果。但是我在下面描述的许多情况下感到困惑。
我在我的共享主机服务器上完成了我的所有工作,我的网站是: www.myweb.com
在关于node.js的每篇文章中,他们都在教导如何通过http//:localhost:3000/
在本地pc服务器中的浏览器中通过以下代码获取结果。
test.js
var http = require('http');
http.createServer(function (request, response) {
response.writeHead(200, {'Content-Type': 'text/plain'});
response.end('Hello Worldn');
}).listen(3000);
console.log('Server running at http://localhost:3000/');
但我的问题:
如果我在浏览器中使用http //:www.myweb.com / test.js`,上面的代码是什么?
在本地pc的情况下,我们写在npm node test.js
,但是在托管服务器的情况下,当任何clint打开页面时,如http//:www.myweb.com/test.js
//:www.myweb.com/test.js如何使用它?
在PHP的情况下,我们使用include(“head.php”)从该页面获取某些内容但在这种情况下如何在node.js上进行调用。
那么,你需要做的是了解HTTP Web服务器如何工作。
通常,在远程计算机(您的服务器)上,您正在运行一个正在监听端口80(用于http请求的标准端口)的Web服务器(例如:apache)的实例。 它将处理在该端口上做出的每个请求,并管理路由以使用正确的php / html文件。
然后,它将运行php代码服务器端 ,呈现一个html文件并将其提供给服务器。 所以客户端根本看不到php代码。
我们来谈谈Node.js. 节点是运行JavaScript代码服务器端的应用程序,并且可以使用某些模块运行http服务器。 但是JavaScript代码永远不会显示给你的客户端,他只会得到你发给他的http响应(通常是html页面)。
所以,现在,使用node.js,您需要通过创建http服务器来执行与Apache服务器相同的操作。 首先,你必须知道的不是许多网站主机提供node.js,甚至是控制台访问。 他们通常服务于您放入配置文件夹的php / html文件,基本上就是这样。 您需要的是虚拟机或可以安装node.js并运行它的服务器,或者使用node.js托管服务(如heroku或nodejitsu来托管您的node.js http服务器)。
因此,要创建node.js http服务器,您需要创建一个http服务器(如您在代码中所做的那样),并使其监听端口80.现在,发送到您的服务器的每个http请求都将由您的节点处理.js实例。 然后,您可以根据该请求做任何事情。
我希望我没有被弄脏。
您需要在服务器上安装NodeJS。 如果这是共享主机,您无法安装其他软件,那么您将无法使用NodeJS。 在这种情况下,请联系您的网站托管公司的支持人员,并咨询有关NodeJS的支持。
另一方面,如果您在系统上拥有root用户或超级用户权限,则可以安装NodeJS。 例如,在CentOS / RHEL系统上,您可以使用yum使用以下命令进行安装。
sudo yum install epel-release
sudo yum install npm
对于Linux的其他发行版:http://ask.xmodulo.com/install-node-js-linux.html
要从您的PC访问节点应用程序到服务器,您还需要在服务器防火墙中打开节点应用程序使用的端口。
链接地址: http://www.djcxy.com/p/84271.html上一篇: How to run node.js in my web site server not my pc local server
下一篇: give a default value for an attribute if the value is null in json by jackson