无法以 Web 用户身份运行 oowriter

2023-11-22

我的笔记本电脑上设置了一个网络服务器。我正在构建一个通过本地网络访问的网络应用程序。 我有一个 php 文件,其中包含以下几行:

$command = "/usr/bin/oowriter --invisible --convert-to pdf /var/www/hackathon/document/gaurav.doc -outdir /var/www/hackathon/pdf/"
exec($command, $output, $return_var);
print_r($output);

所以,问题是,当我在终端中运行上述代码时,php 运行完美。但是,当通过网络浏览器访问时,输出只是空的,并且没有按预期完成转换。

Apache 错误日志显示以下行:

[Java 框架] 函数 createSettingsDocument (elements.cxx) 中出现错误。
javaldx 失败!
警告:无法从 javaldx 读取路径

我已经尝试过解决方案https://wiki.archlinux.org/index.php/Libreoffice#Fishing_Java_Framework_Error。 但这没有用。

我正在使用 OpenJDK 7。

有人知道如何进行这项工作吗?


无法投票,无法发表评论(还)...所以...

蒂姆-欧文说的是真的。

该错误实际上表明函数 createSettingsDocument 出错这暗示某些名为 createSettingsDocument 的函数(注意:创建设置文档)失败了......

这就是你如何(或者至少是我)让它工作:

  1. 以普通用户身份运行一次 libre office 并记下目录 它创建的名称。
  2. 检查服务器正在哪个用户运行(或者PHP正在哪个用户运行 例如,如果您使用 FPM 等,这可能与 www-data 不同...)。
  3. 检查该用户的主目录设置为什么(来自 例如 /etc/passwd)
  4. 在步骤 3 的目录中创建步骤 1 中记下的目录
  5. 将创建的目录的所有者更改为步骤 2 中的用户

在我的服务器上,所需的目录实际上是/var/www/libreoffice,而在我的台式机中,该目录将是/var/www/.config/libreoffice所以你需要确定。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

无法以 Web 用户身份运行 oowriter 的相关文章

随机推荐