首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Windows ()上运行(Generate ) soffice LibreOffice不工作

在Windows ()上运行(Generate ) soffice LibreOffice不工作
EN

Stack Overflow用户
提问于 2019-03-19 15:00:51
回答 1查看 895关注 0票数 0

我正在尝试使用soffice从docx中生成一个pdf,所以我在apache及其工作上进行了尝试,但在windows server 2012和IIS 6.2中尝试了。

如果我在CMD上运行这个命令,它的工作:

代码语言:javascript
复制
soffice --headless --convert-to pdf:writer_pdf_Export --outdir  ../../storage/app/ACTIVO/2019-03/3404/docx/ ../../storage/app/ACTIVO/2019-03/3404/docx/documento_word.docx

因此,在PHP中,我尝试如下:

代码语言:javascript
复制
$comando = 'soffice --headless --convert-to pdf:writer_pdf_Export --outdir  ../../storage/app/ACTIVO/2019-03/3404/docx/ ../../storage/app/ACTIVO/2019-03/3404/docx/documento_word.docx';
$var = exec($comando);
var_dump($var);

它给了我“零”

当我尝试在PHP中使用soffice --version时,也会发生同样的情况。

我在C中给予IUSR完全的权限:\Program\Libreoffice和存储/应用程序也有权限。在IIS中启用匿名身份验证。

我在php中运行,并返回“string(26) "iis apppool\defaultapppool"

代码语言:javascript
复制
$var = exec('whoami');
var_dump($var);

我不知道该怎么办才能修好它。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-03-21 23:56:29

我解决了这个问题,在Windows中创建了一个新用户,其权限很低,可以像该用户一样运行命令。我停止运行SysinternalsSuite命令,在C:\中解压缩zip。

所以,我改变的台词是:

代码语言:javascript
复制
$comando = 'soffice --headless --convert-to pdf:writer_pdf_Export --outdir  ../../storage/app/ACTIVO/2019-03/3404/docx/ ../../storage/app/ACTIVO/2019-03/3404/docx/documento_word.docx';

至:

代码语言:javascript
复制
$comando = '"C:\SysinternalsSuite\psexec.exe" -u DOMAIN\USER -p PASSWORD "C:\Program Files\LibreOffice\program\soffice.exe" --headless --convert-to pdf:writer_pdf_Export --outdir  C:\inetpub\wwwroot\storage\app\ACTIVO\2019-03\3404\docx\ C:\inetpub\wwwroot\storage\app\ACTIVO\2019-03\3404\docx\documento_word.docx';
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55244012

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档