2017-01-02 56 views
0

我在CentOS 7.3.16.11上安裝了UNOCONV庫。當我從CLI運行文件轉換它工作得很好,和我得到的PDF文檔回:
unoconv -d spreadsheet --format=pdf -o temp/ ./document.docx
UCONV無法在CentOS上以PHP轉換文件

但是,當我嘗試從PHP 29年6月5日執行它,它並沒有給我任何輸出PDF 。我是從Python環境得到一個錯誤:
Traceback (most recent call last): File "/usr/bin/unoconv", line 1196, in <module> run() File "/usr/bin/unoconv", line 1108, in run office_environ(of) File "/usr/bin/unoconv", line 202, in office_environ os.environ['PATH'] = realpath(office.basepath, 'program') + os.pathsep + os.environ['PATH'] File "/usr/lib64/python2.7/UserDict.py", line 23, in \__getitem__ raise KeyError(key) KeyError: 'PATH'

經過的路徑在我的環境:
echo $PATH
輸出是:
/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/username/.local/bin:/home/username/bin

有什麼可以不對從PHP運行UNOCONV ?

+0

有沒有路徑設置爲用戶運行php。 – Maerlyn

回答

0

除了搞清楚如何正確而使用PHP來設置PATH你可以黑掉unoconv腳本和變線1174從

os.environ['PATH'] = realpath(office.basepath, 'program') + os.pathsep + os.environ['PATH']

os.environ['PATH'] = realpath(office.basepath, 'program') + os.pathsep + os.environ['PATH'] if 'PATH' in os.environ.keys() else ''

+0

在github上提供的unoconv的當前版本以類似的方式處理這個問題。 – khaoz