我的笔记本电脑上设置了一个网络服务器。我正在构建一个通过本地网络访问的网络应用程序。
我有一个 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 的函数(注意:创建设置文档)失败了......
这就是你如何(或者至少是我)让它工作:
- 以普通用户身份运行一次 libre office 并记下目录
它创建的名称。
- 检查服务器正在哪个用户运行(或者PHP正在哪个用户运行
例如,如果您使用 FPM 等,这可能与 www-data 不同...)。
- 检查该用户的主目录设置为什么(来自
例如 /etc/passwd)
- 在步骤 3 的目录中创建步骤 1 中记下的目录
- 将创建的目录的所有者更改为步骤 2 中的用户
在我的服务器上,所需的目录实际上是/var/www/libreoffice,而在我的台式机中,该目录将是/var/www/.config/libreoffice所以你需要确定。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)