我正在使用 npm install 在其他软件包中安装 gulp-sass。使用 CLI(使用 sudo su forge)可以正常工作:
cd /path/to/package.json/
npm install
Run Code Online (Sandbox Code Playgroud)
package.json 看起来像:
{
"name": "skeleton",
"version": "1.0.0",
"authors": [
"Me <me@mycompany.co.uk>"
],
"private": true,
"devDependencies": {
"gulp": "^3.8.11",
"gulp-autoprefixer": "^2.1.0",
"gulp-concat": "^2.5.2",
"gulp-minify-css": "^1.0.0",
"gulp-notify": "^2.2.0",
"gulp-sass": "^1.3.3",
"gulp-sourcemaps": "^1.5.2",
"gulp-uglify": "^1.2.0"
},
"dependencies": {
"node-notifier": "^4.2.1",
"streamqueue": "^0.1.3"
}
}
Run Code Online (Sandbox Code Playgroud)
在命令行中使用 PHP 也可以正常工作:
php -r "system('npm install');"
Run Code Online (Sandbox Code Playgroud)
但是通过 nginx/PHP-FPM 运行以下 PHP:
<?php
set_time_limit(0);
chdir('/path/to/package.json/');
echo "<pre>";
echo shell_exec('npm install 2>&1');
die();
Run Code Online (Sandbox Code Playgroud)
输出包含以下行的调试文件:
81427 error Linux 4.5.5-x86_64-linode69 …
Run Code Online (Sandbox Code Playgroud)