【发布时间】:2019-09-22 06:36:40
【问题描述】:
我们最近没有进行任何升级。
我们正在尝试运行这个 javascript 代码 (createpdf.js)
const puppeteer = require('/home/glossyadmin/node_modules/puppeteer');
const InvoiceNumber = process.argv[2];
const PDFdir = __dirname + '/../email/invoice/';
(async () => {
const browser = await puppeteer.launch({args: ['--no-sandbox']});
const page = await browser.newPage();
await page.goto('http://localhost:8080/admin/ajax/invoice?InvoiceNumber=' + InvoiceNumber + '&Print=Print', {waitUntil: 'networkidle2'});
await page.pdf({path: PDFdir + InvoiceNumber + '.pdf', format: 'A4'});
await browser.close();
})();
我们一直在用这个 PHP 脚本调用上面的代码:
$Vars = json_decode(urldecode(@$argv[1]), true);
$InvoiceNumber = $Vars['InvoiceNumber'];
$createScript = $_SERVER['DOCUMENT_ROOT'] . '/admin/workers/createpdf.js';
exec("node $createScript 2>&1 ".escapeshellarg($InvoiceNumber), $arrayReturn);
它一直在工作,但最近它停止了。代码看起来不错(错误日志中没有 PHP 错误),但它不再调用/执行 createpdf.js 脚本。我们已经验证了该节点实际上已安装。
我们尚未升级 PHP、Node 或任何其他更新。我们尝试过更改文件和目录的权限。没有什么变化。在这里把我们的头撞到墙上。
【问题讨论】:
-
节点日志中没有节点错误?
-
我们在 Apache 中运行节点,所以我们没有特定的节点日志。据我所知。 Apache2/error.log 中没有显示其他节点特定错误
-
节点有控制台输出
标签: javascript php node.js exec