プログラムを使って文書をプログラムに変換するために、freebsd-serverにliblessofficeをインストールしました(例:odt-> pdf)。それはコマンドラインから動作します!しかし、私の目標は、PHPからそれを行うことができるようにすることです。これは、Webユーザー(www)がlibreofficeを実行できることを要求します。しかし、それはできません。php exec()からlibreofficeを実行する
自分のユーザーとしてLibreOfficeのを実行している場合は、私が取得:
%libreoffice --headless -convert-to pdf Litteraturundervisningogit.doc
javaPathHelper: not found #This should not be a problem, says people on the net.
convert /usr/home/bundsgaard.net/www/jeppe/foredrag/Litteraturundervisningogit.doc ->
/usr/home/bundsgaard.net/www/jeppe/foredrag/Litteraturundervisningogit.pdf using writer_pdf_Export
%
私はルートと同じコマンドをしようとした場合、それは動作しません。同じことが、PHPからWWW-ユーザーの問題です:
sp# libreoffice --headless -convert-to pdf Litteraturundervisningogit.doc
javaPathHelper: not found
sp#
問題は、LibreOfficeの以外のユーザーとして実行したくない理由ので、私は知らない、私はLibreOfficeのから任意の情報を得ることはありませんということです私自身。
私の質問は次のとおりです。PHPでexec()経由でlibreofficeを実行する権限をwwwユーザに与えるにはどうすればよいですか?
"--outdir" LibreOfficeのコマンドから同じforlderはそれだけでPATHの問題ですか?それぞれの '$ PATH'には何がありますか? – Wrikken
rootユーザーの '%sudo php program.php'をコマンドラインでテストしましたが、クライアントは権限を持っていますか? –