2008-09-17 7 views
20

के साथ एक्स-सेंडफ़ाइल का उपयोग करना मुझे एक्स-सेंडफाइल पर अधिक दस्तावेज नहीं मिल रहा है या PHP के लिए उदाहरण कोड (कुछ रेल कोड हैं)।अपाचे/PHP

कोई भी इसे पहले इस्तेमाल करता है और कोड का एक त्वरित स्निपेट और एक संक्षिप्त विवरण देने पर ध्यान देगा?

उत्तर

27

एक्स Sendfile एक HTTP शीर्ष लेख है, तो आप कुछ इस तरह हैं:

header("X-Sendfile: $filename"); 

आपके वेब सर्वर यह उठाता है ऊपर यदि सही ढंग से कॉन्फ़िगर। यहां कुछ और जानकारी है:

http://www.jasny.net/articles/how-i-php-x-sendfile/

+0

मैंने लिंक पर ट्यूटोरियल का पालन किया, लेकिन जब मैं mod-xsend के साथ फ़ाइल डाउनलोड करता हूं तो मुझे फ़ाइल का आकार बाइनरी फ़ाइल (0 बाइट्स) मिलता है ... मैं क्या गलत कर रहा हूं? अद्यतन: इसे स्वयं समझ लिया है। मुझे अपने .htaccess फ़ाइल में '# sableacileAllowAbove ऑन' पर पैरेंट डीआईआरएस '-' XSendFileAllowAbove ऑन 'से' #enable फ़ाइलों को भेजने की आवश्यकता है, मेरे डाउनलोड डाउनलोड वेबूट फ़ोल्डर से बाहर हैं। –

+3

भावी पाठकों के लिए: XSendFileAllowAbove को बहिष्कृत कर दिया गया है; XSendFilePath – Oli

2

तो वेब सर्वर कॉन्फ़िगरेशन में सुधार करने के लिए एक विकल्प नहीं है, पीएचपी के मानक readfile() function पर विचार करें। यह भेजने के रूप में काफी तेज़ नहीं होगा, लेकिन यह अधिक व्यापक रूप से संगत होगा। यह भी ध्यान रखें कि ऐसा करने पर, आपको कम से कम एक सामग्री-प्रकार शीर्षलेख भी भेजना चाहिए।

+0

का उपयोग करें कृपया ध्यान दें कि यदि आप 'readfile() 'का उपयोग करते हैं, तो आपको फिर से शुरू करने या आंशिक डाउनलोड (अनुरोध-श्रेणी) या क्लाइंट कैशिंग (यानी, आवश्यक होने पर' 304 संशोधित नहीं 'लौटने के लिए कोई समर्थन नहीं होगा) (या आप करेंगे PHP कोड के साथ इसे स्वयं संभालने की आवश्यकता है - वहां कुछ कोड स्निपेट होना चाहिए जो वास्तव में ऐसा करते हैं)। – Ale

1

हां, एक्स-सेंडफाइल in this page को चित्रित PHP में एक विस्तृत नमूना कोड है। डाउनलोड और इंस्टॉलेशन के लिए आपको this parent site भी संदर्भित करने की आवश्यकता हो सकती है। मैंने ट्यूटोरियल का पालन किया और यह मेरे लिए आकर्षण की तरह काम किया।