2014-09-23 4 views
7

पर काम करता है I html से पीडीएफ उत्पन्न करने के लिए wkhtmltopdf का उपयोग कर रहा हूं, मैं PHP exec() फ़ंक्शन के माध्यम से निम्न आदेश चलाने की कोशिश कर रहा हूं, लेकिन इसकी पीडीएफ उत्पन्न नहीं करता है, हालांकि मुझे कोई त्रुटि नहीं दिखती है। लेकिन जब मैं कमांड लाइन के माध्यम से एक ही कमांड चलाता हूं तो यह काम करता है।php में exec() फ़ंक्शन के माध्यम से wkhtmltopdf कमांड चलाने में सक्षम नहीं है लेकिन एक ही कमांड कमांड लाइन

नीचे मेरा PHP कोड है, मैं पीडीएफ जेनरेट कमांड निष्पादित करने के लिए उपयोग कर रहा हूं।

$command = "wkhtmltopdf -s A4 /inputhtmlfilepath/test.html /outputfilepath/output.pdf"; 
exec($command); 

मेरी स्थापना के बारे में कुछ जानकारी:

ऑपरेटिंग सिस्टम - Ubuntu 12.04

पीएचपी संस्करण - 5.4.3

किसी भी मदद की सराहना की जाएगी, धन्यवाद।

+0

फ़ाइलों के लिए पूर्ण पथ का उपयोग करें; सुनिश्चित करें कि वेब सर्वर उपयोगकर्ता के पास डीआईआर/फाइलों के अधिकार हैं। –

+1

@ डिजिटल, मैंने इनपुट और आउटपुट फाइलों दोनों के लिए पूरा पथ दिया है और फ़ोल्डर को सभी उपयोगकर्ताओं को पूर्ण अनुमति है, अब 777 पर सेट करें। अभी भी कोई भाग्य नहीं है। –

+1

क्या हो रहा है यह देखने के लिए [आउटपुट और रिटर्न var] (http://php.net/manual/en/function.exec.php) विकल्प का उपयोग करें। –

उत्तर

9

यदि आप 'एक्स सर्वर त्रुटि से कनेक्ट नहीं हो रहे हैं' तो कृपया इसे आज़माएं।

1.Install xvfb पैकेज

sudo apt-get install xvfb 

2.Create 'wkhtmltopdf.sh' और के रूप में एक फ़ाइल है कि के लिए निम्न कोड जोड़ सकते हैं और इस फ़ाइल को स्थानांतरित बचाने

xvfb-run -a -s "-screen 0 640x480x16" wkhtmltopdf "[email protected]" 

3.Then/usr/local/bin को अनुमति दें और अनुमति दें

sudo chmod 555 /usr/local/bin/wkhtmltopdf.sh 

4. फिर आदेश चलाकर पीडीएफ बनाने का प्रयास करें।

/usr/local/bin/wkhtmltopdf.sh input.html output.pdf 
+1

यह मेरे लिए काम करता है। धन्यवाद –

संबंधित मुद्दे