পিএইচপি-তে আপলোড_ম্যাক্স_ফাইলেস পরিবর্তন করা


84

আমি পিএইচপি 5.3.0 ব্যবহার করছি এবং এমন কোনও সমস্যার মুখোমুখি হয়েছি যা সম্ভবত কোনও বাগ (যা ক্ষেত্রে আমি এটি রিপোর্ট করব) বা আমার হতে পারে - তাই আমি নিশ্চিত হতে বলছি।

এই কোডটি চালানোর সময়:

<?php
ini_set('upload_max_filesize', '10M');
echo ini_get('upload_max_filesize'), ", " , ini_get('post_max_size')

আমি এখানে দিয়ে শেষ করছি:

2M, 8M

এটি আমার php.ini এগুলি উচ্চতর স্থাপন করা সত্ত্বেও:

upload_max_filesize = 10M
post_max_size = 10M

(শুধুমাত্র একবার দেখা)

কারণ ত্রুটিটি মান সেট করার সাথে সাথে এটি php.ini এ সেট করার পরে ঘটেছিল আমি এটি একটি বাগ হিসাবে ভাবাতে ঝোঁক। আমি ভুল করছি যেখানে কেউ আমাকে নিশ্চিত করতে বা নির্দেশ করতে পারেন?

আপডেট : দেখে মনে হচ্ছে অ্যাপাচি পুনরায় চালু করার ফলে এটি ঠিক হয়ে গেছে - আমি সবসময় ভেবেছিলাম আপনি যদি php.ini পরিবর্তন করেন তবে এটি পুনরায় আরম্ভ করার দরকার নেই।


9
"আমি সবসময় ভেবেছিলাম আপনি যদি পিএইচপি.আইএনই পরিবর্তন করেন তবে এটি আরম্ভ করার দরকার নেই।" পিএইচপি সিএলআই তাত্ক্ষণিকভাবে পরিবর্তনগুলি গ্রহণ করে, কারণ এটি প্রতিটি অনুরোধের সাথে php.ini পার্স করে। mod_php একবার php.ini পার্স করে - যখন অ্যাপাচি শুরু হয়।
ফ্রাঙ্ক ফার্ম

আমি সম্প্রতি একই সমস্যা ছিল। আপলোডকে পুনরায় চালু না করে আপলোড_ম্যাক্স_ফাইলসাইজ কার্যকর হবে না। আমি পিএইচপি 5.2.9 এ আছি। পুনরায় চালু করার পরে সবকিছু ঠিকঠাক চলছে।
হালুক

পূর্ণ অ্যাপাচি পুনরায় চালু করতে এড়াতে, কেবল "সুডো সার্ভিস অ্যাপাচি 2 রিলোড" ব্যবহার করুন
ব্যবহারকারী 1048839

উত্তর:


69

আপনি PHP.ini এর বাইরে কনফিগারেশন মান সেট করতে শর্টহ্যান্ড স্বরলিপি ব্যবহার করতে পারবেন না । আমি ধরে নিয়েছি যে এটি খারাপ মানের সাথে মোকাবিলা করার সময় সংকলিত ডিফল্ট হিসাবে 2MB এ ফিরে আসবে।

অন্যদিকে, আমি upload_max_filesizeব্যবহার করে সেট করা যেতে পারে বলে মনে করি না ini_set()"সরকারী" তালিকা যুক্তরাষ্ট্রের এটা যে PHP_INI_PERDIR


12
আপনি ঠিক মনে করেন! আপনি ইনআই_সেট () ব্যবহার করে আপলোড_ম্যাক্স_ফাইলেজ সেট করতে পারবেন না কারণ আপলোড_ম্যাক্স_ফাইলসাইজ একটি পিএইচপিএনপিআইআইপিআইআরডিআইআর টাইপ যার অর্থ কেবলমাত্র: পিএইচপি.এনআই
মার্কো ডেমাইও

4
প্রকৃতপক্ষে, আপনি পিএইচপি.আইএনইআই এর বাইরে শর্টহ্যান্ড স্বরলিপি ব্যবহার করতে পারেন; আপনি এটিতে .htaccessএবং সাথে এটি ব্যবহার করতে পারেন ini_set। যদিও সমস্ত সংস্করণে নাও থাকতে পারে।
সুরক্ষক এক

70

আপনি কি একটি ভাগ করা হোস্টিং সরবরাহকারী ব্যবহার করছেন? এটি আপনি পরিবর্তন করার চেষ্টা করছেন এমন কোনও কিছুকে ওভাররাইড করার মাস্টার সেটিংস হতে পারে। আপনি কি তাদের .htaccess এ যুক্ত করার চেষ্টা করেছেন?

php_value upload_max_filesize 10M
php_value post_max_size 10M

4
না, এটি আমার মেশিনে আমার নিজের অ্যাপাচি / পিএইচপি উদাহরণ (যা প্রাসঙ্গিক হলে উইন্ডোজ)। এগুলি অ্যাপাচি কনফিগারেশনে যুক্ত করার চেষ্টা করব।
রস

4
আপডেট: এটি এটিকে প্রভাবিত করে (এগুলিকে 10 এ পরিবর্তন করে) তাই এই পদ্ধতিটি কাজ করে। এটি এখনও php.ini এ কাজ করছে না বা ini_set ব্যবহার করছে না তা নিয়ে আমি এখনও বেশ বিভ্রান্ত।
রস

আপনি পিএইচপি.আইএন না পেতে পারলে +1 এটি অবশ্যই যাওয়ার উপায় - আপনাকে অনেক ধন্যবাদ।
অ্যালেক্স কপলান

4
নোট করুন এটি কেবল
অ্যাজিচি

আমি বলব এমনকি php.iniফাইলটিতে অ্যাক্সেস সহ এটি পছন্দসই পদ্ধতি । আপনাকে বৈশ্বিক সেটিংস হিসাবে না বরং প্রয়োজনের ভিত্তিতে এই অনুমতিগুলি সেট করার অনুমতি দেয়।
ব্রায়ান্ট জ্যাকসন

42

যেহেতু আমি এই সমস্যাটি কেবল একটি ভাগ করা হোস্টে পেয়েছি এবং আমার .htaccess ফাইলটিতে মানগুলি যোগ করতে পারিনি আমি ভেবেছিলাম আমার সমাধানটি ভাগ করব।

আমি মানগুলি সহ একটি আইএন ফাইল তৈরি করেছি। যে হিসাবে সহজ:

".User.ini" নামে একটি ফাইল তৈরি করুন এবং আপনার মান যুক্ত করুন

upload_max_filesize = 150M
post_max_size = 150M

বুম, সমস্যা সমাধান


আমার জন্য কাজ! ধন্যবাদ!
জাস্টিন পুত্নি

4
"পিএইচপি। মূল ফাইলের পাশাপাশি প্রতিটি ডিরেক্টরিতে আইএনআই ফাইলের জন্য পিএইচপি স্ক্যান করে, অনুরোধ করা পিএইচপি ফাইলের ডিরেক্টরিটি শুরু করে এবং বর্তমান নথির মূল পর্যন্ত কাজ করে।" php.net/manual/en/configuration.file.per-user.php
untill

4
ওয়ার্ডপ্রেস সাইটের সাথে দুর্দান্ত কাজ করে! ধন্যবাদ!
প্রতিশোধ নেওয়া হয়েছে_বাজার

আমি .htaccess থেকে এটি করতে অক্ষম হওয়ায় এটি দুর্দান্ত কাজ করেছে। ধন্যবাদ মানুষ!
কৌশলবিদ

পিএইচপি ডিফল্টরূপে প্রতি 5 মিনিটে ইউজারআরিনি ফাইলটি পুনরায় পড়ুন। ফলস্বরূপ ফলাফল উপস্থিত না হলে ধৈর্য ধরুন
অ্যান্ড্রে ইয়ারেমেনকো

11

আমার সূচক.পিএইচপি স্ক্রিপ্টের মতো একই ডিরেক্টরিতে .user.ini ফাইলটি ব্যবহার করে এটি আমার অ্যাপ্লিকেশনটি লোড করে। সামগ্রীগুলি এখানে:

upload_max_filesize = "20M"
post_max_size = "25M"

হেরোকুর জন্য এটিই প্রস্তাবিত সমাধান।


6

এটি অ্যাপাচি কনফিগারেশন দিয়েও নিয়ন্ত্রণ করা যায়। নীচের মতো কোনও কিছুর জন্য httpd.conf এবং / অথবা .htaccess পরীক্ষা করুন:

php_value upload_max_filesize 10M

0

যদি আপনি কোনও স্থানীয় সার্ভারে চালাচ্ছেন, যেমন wamp বা xampp, নিশ্চিত করুন যে এটি php.ini ব্যবহার করছে যা আপনি মনে করেন is এই সার্ভারগুলি সাধারণত কোনও php.ini এ ডিফল্ট হয় যা আপনার এইচটিএমএল ডক্স ফোল্ডারে নেই।


0

এই সমস্যাটি কেবল তখনই প্রয়োগ করা যেতে পারে যখন সমস্যাটি কোনও ওয়ার্ডপ্রেস ইনস্টলেশনতে রয়েছে!

যদি আপনার কাছে এফটিপি অ্যাক্সেস না থাকে বা ফাইল সম্পাদনা করতে খুব অলস হয়,

আপনি সর্বোচ্চ আপলোড ফাইলের আকার বাড়ানোর জন্য সর্বোচ্চ আপলোড ফাইল আকার প্লাগইন ব্যবহার করতে পারেন ।


0

ডিফল্টরূপে, পিএইচপি সার্ভারে সর্বোচ্চ 2 এমবি ফাইল আপলোড করার অনুমতি দেয়। তবে আপনি নিজের শর্ত অনুযায়ী ফাইল আপলোডের সর্বাধিক আকার পরিবর্তন করতে পারেন। পিএইচপি কনফিগারেশন ফাইল php.ini ব্যবহার করে, আপনি পিএইচপি-তে ফাইল আপলোডের আকার বাড়াতে বা হ্রাস করতে পারেন।

প্রথমে আপনার টেক্সট এডিটরে php.ini ফাইলটি খুলুন। আপলোড_ম্যাক্স_ফাইলেজ ভেরিয়েবল অনুসন্ধান করুন এবং আপনি যে আকারটি বাড়িয়ে দিতে চান তা নির্ধারণ করুন।

পোস্ট_ম্যাক্স_সাইজ ভেরিয়েবলের সন্ধান করুন এবং আপনি যে আকারটি বাড়াতে চান তা নির্ধারণ করুন।

post_max_size = 128M

আপনি এখান থেকে এটি পরীক্ষা করতে পারেন


-1

আপনি যদি ফ্লাইতে ini_set ব্যবহার করেন তবে আপনি এখানে পাবেন http://php.net/manual/en/ini.core.php তথ্য যা উদাহরণস্বরূপ আপলোড_ম্যাক্স_ফাইলেজ এবং পোস্ট_ম্যাক্স_সাইজ ফ্লাইতে পরিবর্তনযোগ্য নয় (পিএইচপিএনপিআইআইপিআরডিআইআর)।

কেবলমাত্র একটি php.ini, .htaccess বা vhost কনফিগারেশন পরিবর্তনগুলি এই ভেরিয়েবলগুলিকে পরিবর্তন করে।


-1

আমি একই সমস্যার মুখোমুখি হয়েছি, তবে আমি জানতে পেরেছি যে ini_set () ফাংশন ব্যবহার করে সমস্ত কনফিগারেশন সেটিংস সেট করা যায় না, এটি কনফিগারেশন সেটিংস কোথায় সেট করা যেতে পারে তা পরীক্ষা করে দেখুন


আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.