PHP File Upload Size Limit कैसे बढ़ाएं
यदि आपको एक वेब एप्लिकेशन मिला है जो PHP स्क्रिप्ट के माध्यम से सर्वर पर फाइलें अपलोड करता है, तो आपने देखा होगा कि डिफ़ॉल्ट रूप से आप बहुत बड़ी फ़ाइलों को अपलोड नहीं कर सकते हैं। इसे बदलने का तरीका यहां बताया गया है.
डिफ़ॉल्ट रूप से सीमा की सीमा काफी कम है, स्थिरता और सुरक्षा कारणों से है - एक दुर्भावनापूर्ण स्क्रिप्ट या हमलावर आपके सर्वर को बड़े फ़ाइल अपलोड के साथ करने का प्रयास कर सकता है और अस्थायी रूप से आपके एप्लिकेशन को बंद कर सकता है.
मानों को बदलने के लिए आपको अपनी php.ini फ़ाइल को संपादित करना होगा, जो आमतौर पर इस फ़ाइल पथ पर मिलती है:
/etc/php.ini
यहां वे सेटिंग हैं जिन्हें आप बदलना चाहते हैं:
post_max_size
यह सेटिंग किसी HTTP पोस्ट के आकार को नियंत्रित करती है, और इसे upload_max_filesize सेटिंग से बड़ा करने की आवश्यकता है.
upload_max_filesize
यह मान अपलोड फ़ाइल का अधिकतम आकार सेट करता है.
memory_limit
आप यह सुनिश्चित करना चाहेंगे कि आपकी स्क्रिप्ट मेमोरी की सीमा एक सभ्य आकार में सेट हो, संभवतः अन्य दो सेटिंग्स में से किसी से भी बड़ी हो.
चर सेट करना
आप प्रत्येक चर के लिए आवंटित एमबी की मात्रा के लिए एम द्वारा पीछा एक संख्यात्मक मूल्य का उपयोग करके मान सेट कर सकते हैं। उदाहरण के लिए, 20MB फ़ाइलों को अपलोड करने की अनुमति देने के लिए, आप कुछ इस तरह का उपयोग करेंगे:
memory_limit = 64M
upload_max_filesize = 20M
post_max_size = 25M
एक बार जब आप यह परिवर्तन कर लेंगे, तो आपको अपने Apache सर्वर को फिर से शुरू करना होगा:
/etc/init.d/httpd पुनः आरंभ करें
प्रति एप्लिकेशन अपलोड आकार सेट करना
आप इस सेटिंग को किसी विशिष्ट वेब एप्लिकेशन के लिए बदल सकते हैं। इसे एप्लिकेशन की निर्देशिका में .htaccess फ़ाइल में रखकर। ध्यान दें कि यह केवल तभी काम करेगा जब आपके सर्वर ने आपके वर्चुअल होस्ट या सर्वर के लिए ओवरराइड को सक्षम किया हो.
उदाहरण के लिए, आप फ़ाइल में निम्नलिखित डाल सकते हैं:
php_value memory_limit = 64M
php_value upload_max_filesize = 20M
php_value post_max_size = 25M
एक बार जब आप फ़ाइल को सहेजते हैं, तो परिवर्तनों को लागू किया जाना चाहिए.