当前位置: 首页 > 知识库问答 >
问题:

如何创建nodejs服务器与PHP?

羊舌勇
2023-03-14

我试图用php执行nodejs,这样做非常简单

<? shell_exec("node app.js &"); ?>

我的nodejs文件创建了一个带有Express的服务器。

var express = require("express"),
app         = express();

app.get('/', function(request,response)
{
  response.status(200).send("Welcome");
});

app.listen(82, 'localhost', function(){console.log("Server are running on port 82");});

当文件运行时,这就是输出

错误:侦听EACCES 127.0。0.1:82

bject.exports._errnoException(util.js:873: 11)

在出口方面_主机端口例外(util.js:896:20)

在服务器上_listen2(net.js:1237:19)

听(net.js:1286:10)

净价。js:1395:9

在GetAddrInfoReqWrap。异步回调[作为回调](dns.js:64:16)

在GetAddrInfoReqWrap.onlookup[作为on完成](dns.js:83: 10)

端口是打开的,这是"service iptables state"命令的输出

20接受tcp--0.0。0.0/0 0.0.0.0/0状态新tcp dpts:81:90

我认为错误是因为apache(apache运行在端口80上)没有创建服务器的权限

有人知道怎么解决这个问题吗?

共有1个答案

咸正平
2023-03-14

您需要授予启动节点的进程。js应用程序具有更高的权限,因此它可以使用如此低的端口号,或者您可以使用不受限制的更高的端口号(高于1024)。例如,端口3000是常见的。

有些人还通过在更高的端口(如3000)上启动服务器来解决这个问题,然后使用iptable将来自低端口(如您使用的82)的传入请求转发到3000端口。这允许您的服务器运行而不需要更高的特权,但它仍然可以在较低的端口号上“工作”。

这里有更多关于工作方法的讨论:有没有一种方法让非根进程绑定到Linux上的“特权”端口?以及如何在端口80Linux上运行服务器作为普通用户?。

 类似资料:
  • nodejs版本:0.8.6 我使用openssl创建了一个ssl csr文件,并使用以下命令:openssl req-nodes-newkey rsa:2048-keyout myserver.key-out myserver.csr null 我试着检查这个问题:openssl s_client-connect my_dns:443//my_dns当然指向我的nodejs服务器 结果:已连接(

  • 本文向大家介绍Nodejs创建TCP服务器 - king0222,包括了Nodejs创建TCP服务器 - king0222的使用技巧和注意事项,需要的朋友参考一下 1.Nodejs提供了net模块给我们,所以我们创建TCP服务器很简单: 通过var server = require('net').createServer();这行代码我们可以得到tcp服务器对象的引用。 server对象具注册了以

  • 本文向大家介绍Nodejs如何搭建Web服务器,包括了Nodejs如何搭建Web服务器的使用技巧和注意事项,需要的朋友参考一下 使用Nodejs搭建Web服务器是学习Node.js比较全面的入门教程,因为要完成一个简单的Web服务器,你需要学习Nodejs中几个比较重要的模块,比如:http协议模块、文件系统、url解析模块、路径解析模块、以及301重定向问题,下面我们就简单讲一下如何来搭建一个简

  • 本文向大家介绍Express与NodeJs创建服务器的两种方法,包括了Express与NodeJs创建服务器的两种方法的使用技巧和注意事项,需要的朋友参考一下 目录 NodeJs创建Web服务器 Express创建Web服务器 NodeJs创建Web服务器 这是一个原生式的创建一个web服务器的方式,但是有缺陷。如果我们想要将我们的静态页面至于与服务器同域下的时候很不方便。 Express创建We

  • 本文向大家介绍轻松创建nodejs服务器(2):nodejs服务器的构成分析,包括了轻松创建nodejs服务器(2):nodejs服务器的构成分析的使用技巧和注意事项,需要的朋友参考一下 紧接上一节,我们来分析一下代码: 第一行请求(require)Node.js自带的 http 模块,并且把它赋值给 http 变量。 接下来我们调用http模块提供的函数: createServer 。 这个函数

  • 本文向大家介绍轻松创建nodejs服务器(1):一个简单nodejs服务器例子,包括了轻松创建nodejs服务器(1):一个简单nodejs服务器例子的使用技巧和注意事项,需要的朋友参考一下 我们先来实现一个简单的例子,hello world。 似乎每种语言教程的第一节都会讲这个,我们也不例外。 首先我们先创建一个项目目录,目录可自己定义,本案例的目录为 e:/nodetest/。 由于我们要搭建