2009-04-07 16 views
6

मेरे पास 15 फ़ील्ड वाले एक PHP वेब पेज है। उपयोगकर्ता छवियों को अपलोड करने के लिए इसका इस्तेमाल करेगा। मैंने 15 जेपीजी छवियों को अपलोड करके इसका परीक्षण किया, प्रत्येक के बारे में 2 एम, बिना किसी समस्या के। जिस दिन मैं लॉन्च करता हूं, मैं इस वेब पेज को अन्य लिनक्स में साझा कर रहा हूं जो होस्टिंग वातावरण साझा करता है (अभी भी सुनिश्चित नहीं है)। क्या कुछ वेब होस्टिंग वातावरण हैं जो एक http अनुरोध में कुल अपलोड के आकार को सीमित करते हैं?PHP - अधिकतम कुल अपलोड आकार?

उत्तर

19

हां। कर रहे हैं (जहाँ तक मैं याद कर सकते हैं), जो आकार प्रतिबंध अपलोड प्रभावित होगा तीन या तो विन्यास सेटिंग्स:

  • upload_max_filesize, जो अपलोड की गई फ़ाइलों
  • post_max_size का आकार है, जो कुल की सीमा पर एक ऊपरी सीमा निर्धारित करता है पोस्ट डेटा के आकार, फ़ाइल डेटा
  • max_input_time है, जो समय की लंबाई को प्रतिबंधित करता है स्क्रिप्ट तैनात मूल्यों

upload_max_filesize सहित इनपुट डेटा, कार्रवाई करने के लिए अनुमति दी है सहित प्रत्येक मैं पर एक सीमा है व्यक्तिगत फ़ाइल; हालांकि, max_post_size पूरे अनुरोध पर ऊपरी सीमा है, जिसमें सभी अपलोड की गई फ़ाइलें शामिल हैं।

विभिन्न होस्टिंग वातावरण इन मानों को अलग-अलग सेट करेंगे, जो तैनाती पर आपकी क्षमताओं को प्रभावित कर सकते हैं।

+3

आपके द्वारा इन सभी परिवर्तनों को करने के बाद एक अपाचे पुनरारंभ करने में सहायता मिलती है लेकिन कुछ भी नहीं होता – sjobe

+0

अन्य हैं, – docesam

0

यह असामान्य होगा, लेकिन निश्चित रूप से, जो भी होस्टिंग कंपनी आप चुनते हैं उसके साथ जांच करें। यदि कोई सीमा थी, तो यह निश्चित रूप से 30 एमबी से अधिक होगी।

+0

मेरी लिनक्स मशीन पर डिफ़ॉल्ट सीमा 2 एमबी थी। – Benson

+0

वैसे हाँ, लेकिन जब आप होस्टिंग खरीदते हैं तो वे इसे बढ़ाने जा रहे हैं, और यदि वे नहीं करते हैं तो आप उन्हें पूछ सकते हैं। –

+0

क्रैपी होस्टर्स नहीं करते हैं। – ThiefMaster

0

php.ini निर्देश "post_max_size" को सीमित करना चाहिए कि आप एक ही पोस्ट में कितना डेटा भेज सकते हैं। यदि आप एक पोस्ट में 15 छवियां पोस्ट करते हैं तो मुझे पूरा यकीन है कि अभी भी एक पोस्ट माना जाता है। तो लाइव होने से पहले इस मूल्य की जांच करना अच्छा हो सकता है।

4

यह php.ini में एक सेटिंग है। आप "upload_max_filesize" लेबल वाले फ़ील्ड के लिए PHP जानकारी के आउटपुट में देख सकते हैं। एक php जानकारी पृष्ठ प्राप्त करने के लिए निम्न कोड के साथ एक php फ़ाइल बनाने:

<?php phpinfo(); ?> 

This post php.net पर आप उस जानकारी को प्राप्त करने के लिए नमूना कोड देता है, और शेष पृष्ठ php विन्यास का भंडार है विकल्प।

4

अपलोड प्रक्रिया सीमित पीएचपी सेटिंग्स का गुच्छा रहे हैं:

  • file_uploads
  • upload_max_filesize
  • max_input_time
  • memory_limit
  • max_execution_time
  • post_max_size
हालांकि यह अपलोड आकार को सीमित नहीं सच इनमें से कई है http://www.radinks.com/upload/config.php

, वे अपलोड प्रक्रिया की अधिकतम सीमा तय करते हैं - उदाहरण के लिए:

मैं इस पेज को पढ़ने का सुझाव था यदि स्मृति सीमा बहुत कम है, तो आपको बड़ी फ़ाइलों को अपलोड करने में समस्याएं होंगी जिन्हें थोड़ी देर के लिए स्मृति में रहने की आवश्यकता है।

+0

'file_uploads',' memory_limit' और 'max_execution_time' के नीचे मेरा उत्तर अधिकतम कुल अपलोड आकार को सीमित नहीं करता है। – Gumbo

6

अपलोड सीमाएं php ini के माध्यम से सेट की गई हैं।आप उन्हें तो जैसे मिल की कोशिश कर सकते हैं:

$post_max_size = ini_get('post_max_size'); 
$upload_max_filesize = ini_get('upload_max_filesize'); 
-1

मैं सबसे अच्छा समाधान here देखा है अब तक, और इस कोड है:

/** 
* Returns the maximally uploadable file size in megabytes 
* 
* @return string 
*/ 
function getMaxUploadSize() 
{ 
    $max_upload = (int)(ini_get('upload_max_filesize')); 
    $max_post  = (int)(ini_get('post_max_size')); 
    $memory_limit = (int)(ini_get('memory_limit')); 
    return min($max_upload, $max_post, $memory_limit);  
} 
0

आप nginx का उपयोग कर रहे हैं तो सुनिश्चित करें कि आप कर निम्नलिखित:

server { 
... 
    client_max_body_size 100M; 
.... 
} 
0
यहाँ

:

max_execution_time 
max_input_time 
memory_limit 
post_max_size 
upload_max_filesize 
max_file_uploads 
संबंधित मुद्दे