运行 来自 PHP 的 SVGO 不适用于 MAMP

Running SVGO from PHP doens't work with MAMP

我想从 PHP 运行 https://github.com/svg/svgo 但是权限有一些问题。

我的示例应用程序:

root
 -- svgo.php
 -- svgfiles
  -- test.svg
 -- node_modules
    -- svgo
      -- bin
        --svgo

我的PHP脚本:

<?php
  exec("node_modules/svgo/bin/svgo svgfiles/test.svg -o svgfiles/test.min.svg");
?>

当我 运行 在 CLI "php svgo.php" 上创建 test.min.svg 文件时,但是当我使用我的 MAMP 安装访问 "localhost/svgo.php" 时,它什么也不做。我还给路径 "svgfiles" 权限 777.

您必须明确告诉 node 到 运行 svgo 库。并使用二进制文件的完整路径。

示例:

exec("/absolute/path/to/node /absolute/path/to/svgo [options] [args]");