我对node.js编程很陌生。我使用的是linux专用服务器。我已经在我的服务器(linux)安装了node.js。
我使用以下php程序来运行linux命令,所以我可以通过这些linux命令运行node.js程序
test.php:
exec('node test.js &', $a1,$a2);
print_r($a1);
echo $a2;
运行这个程序后,它显示如下o/p:
Array ( ) 0
但是不返回任何值在$a1变量中,它应该显示"Hello World"
. js:
var http = require("http");
http.createServer(function(request, response) {
response.writeHead(200, {"Content-Type": "text/plain"});
response.write("Hello World");
response.end();
}).listen(8888);
我也尝试过端口3000和8000
这一次我看不出相同的代码是如何在Windows上运行的,而不是在Linux上。特别是因为你的php包含UNIX语法。
请不要使用PHP作为Node.js的桥梁,它只会扼杀所有的Node.js放在首位的意义。
你需要做的是在linux机器的Shell中运行一个命令:
node test.js
它将启动一个进程,不要退出它。
一旦进程运行,您将能够通过浏览器导航到您的Hello World
, URL将基于您选择的服务器的IP和端口,例如:
http://1.2.3.4:8888/
如果这还不能回答你的问题,那么请澄清一下,你到底想要达到什么目标。