Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/294.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在linux专用服务器上运行simple node.js Hello World程序_Javascript_Php_Linux_Node.js - Fatal编程技术网

Javascript 如何在linux专用服务器上运行simple node.js Hello World程序

Javascript 如何在linux专用服务器上运行simple node.js Hello World程序,javascript,php,linux,node.js,Javascript,Php,Linux,Node.js,我对node.js编程非常陌生。我使用的是linux专用服务器。我已经在我的服务器(linux)中安装了node.js 我正在使用下面的php程序来运行linux命令,这样我就可以通过这些linux命令来运行node.js程序 test.php: exec('node test.js &', $a1,$a2); print_r($a1); echo $a2; var http = require("http"); http.createServer(function(request,

我对node.js编程非常陌生。我使用的是linux专用服务器。我已经在我的服务器(linux)中安装了node.js

我正在使用下面的php程序来运行linux命令,这样我就可以通过这些linux命令来运行node.js程序

test.php:

exec('node test.js &', $a1,$a2);
print_r($a1);
echo $a2;
var http = require("http");
http.createServer(function(request, response) {
  response.writeHead(200, {"Content-Type": "text/plain"});
  response.write("Hello World");
  response.end();
}).listen(8888);
运行此程序后,显示以下o/p:

Array ( ) 0
但不返回$a1变量中的任何值,该变量应显示“Hello World”

test.js:

exec('node test.js &', $a1,$a2);
print_r($a1);
echo $a2;
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/

如果这不能回答您的问题,那么请澄清您到底想要实现什么。

为什么要用php脚本运行nodejs?是什么让您
var\u转储(函数存在('pcntl\u fork')?与节点http服务器对话并捕获响应的部分在哪里?我的项目有这样的要求。实际上我想要演示应用程序,在同一张幻灯片上会有一个控制器和n个用户(比如10k或以上)。还有其他建议吗?@dandavis:正如我说的,我对nodejs是新手。同样的代码在我的本地机器(Windows OS)上运行,但在服务器(Linux)上不运行。我是在Linux本地服务器上运行的,并且运行正常。但我需要让它在linux专用托管服务器上运行,因为我无法访问shell。有没有其他方法可以通过PHP运行它?我正在开发一个实时演示web应用程序(类似presentation.io),presentor将控制幻灯片,用户将在同一张幻灯片上。我读到node.js可以做这项工作。如果还有其他选择,请告诉我。请提供建议。您是如何在没有shell访问的情况下安装node.js的?它是由linux服务器技术支持团队安装的。如果我运行以下php程序,它会给出o/p:–Array([0]=>Hello World)0(这意味着这个Hello World程序正在成功运行)php程序:exec('node test.js&',$a1,$a2);印刷费($a1);echo$a2;test.js program console.log(“Hello World”);