2013-03-28 64 views
0

我無法使用unoconv將.doc轉換爲使用exec的php中的PDF。下面是我想:使用shell_exec從php腳本運行unoconv的問題

$output = exec("unoconv /opt/bitnami/apache2/htdocs/=".$fileData['name']); 
error_log(print_r($output, TRUE)); 

這個命令,當運行在控制檯完美的作品,但是當通過PHP運行,它給出了錯誤日誌如下:

python: /opt/bitnami/common/lib/libcrypto.so.1.0.0: no version information available (required by python) 
python: /opt/bitnami/common/lib/libssl.so.1.0.0: no version information available (required by python) 
Aborted 
[Thu Mar 28 20:13:58.312843 2013] [:error] [pid 1481] [client ***] 

我不我認爲前兩行是相關的,我不知道如何獲得更多關於它爲什麼中止的信息。我也嘗試過使用這種包裝存放在/usr/local/bin/unoconv.sh

#!/bin/bash 

if [ -z "$1" ]; then 
    echo "Must pass file"; 
    exit 10; 
fi 

/usr/bin/unoconv -f pdf $1.rtf 

但是,給出了錯誤

python: /opt/bitnami/common/lib/libcrypto.so.1.0.0: no version information available (required by python) 
python: /opt/bitnami/common/lib/libssl.so.1.0.0: no version information available (required by python) 
/usr/local/bin/unoconv.sh: line 8: 2886 Aborted     /usr/bin/unoconv $1 
[Thu Mar 28 20:17:05.331830 2013] [:error] [pid 1188] [client ***] 

上還有什麼嘗試任何想法它運行?感謝您的幫助

+0

分佈? – mkjasinski

+0

對不起,這是Ubuntu 12.04.1 LTS – davis

+0

結果如下:'pkg-config --libs openssl'? – mkjasinski

回答

0

我用exec()完成了它;

$path_exe = "\"C:\Program Files (x86)\LibreOffice 4\program\python.exe\" c:\unoconv\unoconv -f png "; 
exec('"C:\Program Files (x86)\LibreOffice 4\program\python.exe" c:\unoconv\unoconv -f pdf 'c:\'.$filename, $array_buffer, $code_error); 

,則應指定路徑python.exe和路徑到Linux/UNIX的unoconv