在我的应用程序中,我想执行一个Node.JS
文件从PHP
,这反过来又使http request
到另一个PHP
文件。在PHP中使用exec执行nodejs脚本文件()
总之,这是我正在做的过程。
PHP文件--->电话 - >文件的NodeJS --->处理数据 - >并且使HTTP请求 - > PHP文件
当运行通过终端nodejs
文件,它成功地使http请求到另一个PHP
文件,我得到我想要的。
但是,当我尝试通过PHP
运行nodejs
文件时,nodejs文件无法找到某些模块。
我在PHP
代码:
$nodeJsPath = '/var/www/html/projectfolder/js/nodefunc.js';
$ret = exec("node ".$nodeJsPath.' 2>&1', $out, $err);
这是我得到的错误:
Array
(
[0] => module.js:457
[1] => throw err;
[2] => ^
[3] =>
[4] => Error: Cannot find module 'some_module'
[5] => at Function.Module._resolveFilename (module.js:455:15)
[6] => at Function.Module._load (module.js:403:25)
[7] => at Module.require (module.js:483:17)
[8] => at require (internal/module.js:20:19)
[9] => at Object.<anonymous> (/var/www/html/projectfolder/js/nodefunc.js:5:9)
[10] => at Module._compile (module.js:556:32)
[11] => at Object.Module._extensions..js (module.js:565:10)
[12] => at Module.load (module.js:473:32)
[13] => at tryModuleLoad (module.js:432:12)
[14] => at Function.Module._load (module.js:424:3)
)
我可以知道为什么downvote和什么是错这个问题? – Abhinav
当从CLI运行命令时它工作吗? – krampstudio
是的,它从终端执行时运行正常 – Abhinav