मैंने प्रोग्रामेटिक रूप से दस्तावेजों को परिवर्तित करने के लिए अपाचे के साथ एक फ्रीब्स-सर्वर पर libreoffice हेडलेस स्थापित किया है (उदा। Odt-> pdf)। यह कमांड लाइन से काम करता है! लेकिन मेरा लक्ष्य php से ऐसा करने में सक्षम होना है। यह मांग करता है कि वेब-उपयोगकर्ता (www) libreoffice चला सकते हैं। लेकिन ऐसा नहीं हो सकता।PHP निष्पादन से 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
%
अगर मैं रूट के रूप में एक ही आदेश की कोशिश, यह काम नहीं करता।
sp# libreoffice --headless -convert-to pdf Litteraturundervisningogit.doc
javaPathHelper: not found
sp#
समस्या यह है कि मैं लिब्रे ऑफिस से कोई जानकारी प्राप्त नहीं है, इस प्रकार मैं नहीं जानता कि क्यों लिब्रे ऑफिस अलावा किसी अन्य उपयोगकर्ता के रूप में चलाने के लिए नहीं चाहता है: एक ही php से www-उपयोगकर्ता के साथ समस्या यह है मेरा अपना।
मेरा प्रश्न है: मैं php में exec() के माध्यम से libreoffice चलाने के लिए www-user अनुमति कैसे दे सकता हूं?
यह सिर्फ एक पथ मुद्दा है? उनके संबंधित '$ पाथ' में क्या है? – Wrikken
आपने रूट उपयोगकर्ता, '% sudo php program.php' के साथ कमांड लाइन द्वारा परीक्षण किया है, क्योंकि ग्राहक के पास अनुमति है? –