使用php启动和停止node.js的expressjs应用程序

时间:2016-11-28 09:27:33

标签: javascript php node.js express npm

我正在制作网络服务。我正在使用node.js的express.js npm。

要将此项目提交给我的客户端,我需要创建一个控制器文件来启动和停止服务器而不使用服务器中的命令提示符。

要启动服务器,我使用命令Log.e("City ID==>>", cities.get(position).getCityID()); ,因为我的服务器是基于Linux的。

有没有办法使用PHP来标记和停止我的服务器以避免在服务器中使用命令提示符或终端?

我已经提到了这个link,但我无法理解如何将它用于express.js框架。使用此文件我只能运行单个节点文件。我无法运行set DEBUG=myapp:* & npm start

1 个答案:

答案 0 :(得分:0)

更新

  • 首先正确安装express.js How to install express.js from here
  • 看看是否响应,然后全局快速安装并正常工作

  • 在CMD中输入express如果看到下面的响应然后它的意思是它正确安装,现在你把它们称为目录的一面 express

  • 使用express创建你的项目并在这里运行它的工作与否然后停止它运行你的PHP代码
  • 快照显示了如何制作项目并运行 here is my express project
  • 跑步后
  • 您将看到以下屏幕

express   - 现在你准备从php启动服务器了   - 这里节点服务器响应 enter image description here   - 我的PHP屏幕输出 php response

现在php代码将用于快递应用

`exec('set DEBUG=server.js:* & npm start');`

    echo "server run sucessfully";

注意:不要写app.js写 server.js

  • 将app.js保存在您的php文件所在的同一目录中
  • 制作app.js文件

var http = require('http');
const PORT=9999; function handleRequest(request, response){ response.end('app.js start from php'); } var server = http.createServer(handleRequest); server.listen(PORT, function(){ });

你的php文件

//for starting
  exec('node server.js');
echo "app.js run sucessfully";}
//for stoping 
    exec('taskkill /f /im node.exe')
        echo "all stoped node.exe instances";
  

注意你可以通过PID杀死你的app.js

现在访问您将看到app.js正在运行的网址

http://127.0.0.1:9999/