2 zerocorner zerocorner 于 2016.03.15 17:27 提问

php执行exec把word转成pdf权限问题 5C

服务器:ubuntu14.04
PHP:5.4
apache:2.0
我按照网上找的方法把jdk1.7.0_79,jodconverter-2.2.2都安装好了,然后用root登录服务器,直接输入命令java -jar /alidata1/source/jodconverter-2.2.2/lib/jodconverter-cli-2.2.2.jar /var/www/wwwroot/Upload/doc/test.doc /var/www/wwwroot/Upload/doc/'test.pdf是可以转的,但是把这段命令放到php文件里就执行不了,返回值一直都是int(127),用whoami返回的结果是www-data,然后我把服务器上wwwroot、source的所属从root改成www-data,结果还是int(127),
<?php
//shell_exec('whoami');
exec('java -jar /alidata1/source/jodconverter-2.2.2/lib/jodconverter-cli-2.2.2.jar /var/www/wwwroot/Upload/doc/test.doc /var/www/wwwroot/Upload/doc/test.pdf 2>/var/www/wwwroot/log.txt',$arr,$res);
var_dump($arr,$res);
?>
这样抓日志,得到的是sh: 1: java: not found。
有哪位大神知道这个到底是不是权限的问题,应该如何调整?感谢!

1个回答

qwfy326
qwfy326   2016.03.22 11:36

这个不是权限的问题,你看错误提示 java这个命令没有找到,PHP调用的时候要使用绝对路径的,你可以which java查看下路径,比如是/usr/bin/java 的话应该这么写。

 <?php
//shell_exec('whoami');
exec('/usr/bin/java -jar /alidata1/source/jodconverter-2.2.2/lib/jodconverter-cli-2.2.2.jar /var/www/wwwroot/Upload/doc/test.doc /var/www/wwwroot/Upload/doc/test.pdf 2>/var/www/wwwroot/log.txt',$arr,$res);
var_dump($arr,$res);
?>
zerocorner
zerocorner 不是,我手动执行/usr/bin/java -jar /alidata1/source/jodconverter-2.2.2/lib/jodconverter-cli-2.2.2.jar /var/www/wwwroot/Upload/doc/test.doc /var/www/wwwroot/Upload/doc/test.pdf 2>/var/www/wwwroot/log.txt这个的话是可以生成的,现在就是打印返回值的时候返回的都是127
2 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
php通过JODConverter将word转换为pdf
JODConverter(Java OpenDocument Converter),可以转换不同Office格式的文档。它利用OpenOffice.org,可以自动化OpenOffice.org支持的所有转换。包括转换为pdf文件,部分支持转换到html文件。 JODConverter下载地址:https://sourceforge.net/projects/jodconverter
php实现office文档转成pdf预览方法
$filetype = array(".docx",".doc",".xlsx",".xls",".pptx",".ppt",".jpg",".png",".pdf"); $tempFile = IMG_HOST."/".$log["attachment"]; $url = str_replace($filetype,"",$tempFile).".pdf"; header('Location:
PHP实现word文档转html以及pdf
一 : 使用phpword生成word文档,具体步骤如下: 安装环境配置: **必须安装:** 1. 》=PHP 5.3.3 + 2. XML Parser extension 3. Zend\Escaper component 4. Zend\Stdlib component 5. Zend\Validator component 选择性安装: Zip extens
用php把word文件转换成pdf文件
php调用com组件配置 以openoffice为例   什么是com组件?   COM构架下,人们可以开发出各种各样的功能专一的组件,然后将它们按照需要组合起来,构成复杂的应用系统。COM与语言,平台无关的特性使所有的程序员均可充分发挥自己的才智与专长编写组件模块。   配置的目的主要是解决无法创建com对象问题,实际要实现功能word ppt  xml转化为pdf  
PHP 实现Word,excel等转换pdf
最近做一个项目,需要将用户上传的word,excel文档转成PDF文档保存并打印,在网上找了很多资料,并不全面,所以自己写了一份比较全面的教程来分享。 下面是操作步骤: 1、        安装免费的openOffice软件,请至openoffice.org下载最新版本。 2、        JDK支持,请自行搜索下载最新版本JDK。 3、        安装完openOffice后,在开
关于PHP运行权限问题
解决问题 “You don't have permission to access /index.html on this server.” 前几天装一个linux 企业版5.0安装了apache,打开测试页面的时候出现如下错误: Forbidden You don't have permission to access /index.html on this server. 开始
centos下ppt(pptx)文件转换为pdf文件,用PHP显示内容
公司想让弄一个可以播放ppt文件功能的服务,在网上也找了很多资料,一般的方法是把ppt转换成pdf或者图片文件,在转化成falsh(.swf)文件。 我个人的思路是先转化成PDF文件,在用PHP代码显示PDF文件的内容。不用再次转化成swf文件,pdf文件php可以直接显示。 在网上找到一篇非常有用的博文,步骤非常完善。http://my.oschina.net/lijialong/blog/
php 上传word文件 Word文件转 PDF
以前用过office组件转换上传文件word同时转换为html文件,这次要将word文件转换为pdf格式,网上的方法很多,也很麻烦,也不想在服务器上再安装第三方软件,花了好几天的时间,终于在一个网站上,发现在了原来用COM组件,在转换为html文件的同时,也能转换为pdf格式,而自己服务器上已经安装了office2010,这样只需要改写一下以前的几行代码就可以,代码如下: $word = n
php利用openoffice将文件转换为swf实现在线预览我把代码全部奉上,欢迎大家一起研究。
php利用openffice转换为pdf,再转换为swf实现在线预览,我把代码全部奉上,欢迎大家一起研究。
将word文档转换为图片格式的PDF
0x00 前言编写一篇文档后,往往会通过转为pdf版本后发布来避免在不同环境下格式出现混乱的情况。 但这样操作转出pdf文档可以通过普通的pdf阅读器进行文本的抓取,不能达到我们想要保护知识产权的想法。 因此在这里推出一篇如何将word文档转换为图片格式的pdf,来保护保护0x01 作案工具pdftiger下方是本人上传的工具(含注册码) http://download.csdn.net/do