Windows CLI 命令无法通过 IIS 运行,但可以通过 CLI 运行

Windows CLI 命令无法通过 IIS 运行,但可以通过 CLI 运行

我正在尝试运行以下命令:

"C:\Program Files\ImageMagick-7.0.3-Q16\magick" convert "G:\path\to\filename.pdf[1]" -colorspace RGB -geometry 800 "g:\path\to\temp\filename.png"

如果我通过登录运行它,它运行得很好cmd,但如果我尝试通过 IIS / PHP /执行它不起作用。我得到的是以下错误:

convert: no images defined `g:\path\to\temp\filename.png' @ error/convert.c/ConvertImageCommand/3254.

我已授予g:\path\to\tempIUSR、IIS_USERS、ANONYMOUS LOGIN 和 Everyone 完全控制权限。但没有任何作用。

我确实exec('echo %username%')看到当前通过 IIS 登录的用户是,COMPUTER$但这对我没有什么帮助。

编辑:

我已经授予“每个人”完全控制权限,C:\Program Files (x86)\gs\gs9.09\binC:\Program Files\ImageMagick-7.0.3-Q16仍然得到同样的结果。

编辑2:

对于那些将我的问题标记为重复的人无法将 PDF 转换为图像,因为“未定义图像”错误... 不行。首先,我运行的是 Windows - 不是 Linux - 所以显然which gs不行。其次,就我而言,convert当我通过 cmd.exe 运行它时,它工作正常。但是当我尝试通过 IIS / PHP / exec() 运行它时,它不起作用。在另一个问题中,它根本不起作用。就是这样。

编辑3:

我还尝试使用“LocalSystem”创建一个新的应用程序池https://stackoverflow.com/a/23046001/569976。 没有什么。

答案1

我只需安装 WAMP 即可实现此功能。因此,IIS 在端口 80 / 443 上运行,而 WAMP 在端口 81 / 444 上运行。

相关内容