
چگونه متغیرهای PHP را با استفاده از فایل user.ini. تغییر دهیم؟
در دنیای پویا و همیشه در حال تغییر توسعه وب، بهینهسازی عملکرد سرور و کنترل دقیق تنظیمات PHP از اهمیت بالایی برخوردار است. فایل php.ini، به عنوان قلب پیکربندی PHP، نقشی حیاتی در تعیین رفتار و عملکرد اسکریپتهای PHP ایفا میکند. اما گاهی اوقات، دسترسی مستقیم به این فایل امکانپذیر نیست یا محدودیتهایی وجود دارد. اینجاست که فایل user.ini. به کمک ما میآید و امکان شخصیسازی تنظیمات را در سطح دایرکتوری فراهم میکند.
در این مقاله از نت افراز بلاگ، قصد داریم به بررسی عمیق نحوه ویرایش فایل php.ini و چگونگی استفاده از فایل user.ini. برای تنظیم متغیرهای پیشفرض بپردازیم. این دانش به شما کمک خواهد کرد تا کنترل بیشتری بر محیط اجرایی PHP خود داشته باشید و بتوانید عملکرد و امنیت برنامههای خود را به طور قابل توجهی بهبود بخشید.
در ادامه به معرفی متغیرهای PHP و تغییر مقادیر پیش فرض آنها با استفاده از فایل user.ini. میپردازیم.
php.ini چیست؟
php.ini یک فایل پکربندی کلیدی در PHP است. شما با php.ini میتوانید تنظیمات و پارامترهای مهم در محیط PHP تنظیم و تعیین کنید.
در ادامه به برخی از مهمترین تنظیمات آن اشاره میکنیم:
مدیریت حافظه
همانند یک واحد آپارتمان که میتوان برای آن حداکثر استفاده برق در نظر گرفت، میتوان میزان حافظهای که یک اسکریپت استفاده میکند را مشخص کرد.
تنظیمات امنیتی
میتوانید تنظیمات امنیتی مختلفی را برای اسکریپتهای PHP خود پیکربندی کنید، مانند اینکه کدام توابع PHP باید غیرفعال شوند.
آپلود فایلها
میتوانید حداکثر اندازه فایلی را که اسکریپتهای PHP میتوانند آپلود کنند (به طور مثال upload_max_filesize
) تنظیم کنید.
چگونه فایل user.ini. را بسازیم؟
در ابتدا برای اینکه بتوانید تنظیمات دلخواه را ایجاد کنید باید وارد دایرکت ادمین شوید (www.domain.com:2222 یا www.domain.com:2223) سپس گزینه مدیریت فایل را انتخاب کرده (1) بعد از آن به شاخه public_html رفته (2) و یک فایل جدید (3) به نام (user.ini.) میسازیم (4).
نمایش خطا
یکی از بهترین متغیرهای کاربردی در PHP متغییر DISPLAY ERROR است. اگر در هنگام نصب یک پوسته و یا افزونه و یا حتی پس از بروزرسانی برنامه سایت پی اچ پی خود (مثل وردپرس، جوملا، اپن کارت و…)، دچار مشکل شدید با ذخیره دستور زیر در فایل user.ini. میتوانید علت خطا را در صفحه اصلی است مشاهده کنید.
در بیشتر اوقات در صورت مشاهده صفحه سفید پس از بروزرسانی پوسته و افزونهها میتوانید خطا را با استفاده از کد زیر مشاهده کرده و نسبت به رفع آن اقدام کنید:
display_errors = On
display_startup_errors = On
محدودیت حافظه
با دستور زیر میتوانید محدودیت حافظه را تغییر دهید. البته این محدودیت حداقل و حداکثر داشته و در اکثر سیستمهای کلاد لینوکس با اعمال این تغییرات (بیش از حد مجاز) سایت از دسترس خارج میشود.
memory_limit = 256M
البته یادتان باشد نت افراز از سیستم کلاد لینوکس استفاده نمیکند و این باعث میشود برنامه سایت تا حد زیادی در زمانی که بار سرور پایین باشد بتواند از حداکثر مجاز در لحظه استفاده کند بدون اینکه به عملکرد سایر سایتها صدمهای زده شود.
حداکثر حجم آپلود
یکی از مشکلات اکثر کاربران محدودیت حجم آپلود فایل در پی اچ پی است. این محدودیت با استفاده از کد زیر قابل رفع بوده اما ممکن است در برنامههایی مثل وردپرس با اعمال آن تغییر ایجاد نشود.
در صورتی که از تنظیمات انجام شده و استفاده صحیح کد زیر مطمئن هستید (فقط عددی که در وردپرس مشاهده میکنید تغییر نکرده است) میتوانید بدون توجه به عدد ذکر شده آپلود را با بیشتر از 8 مگابایت انجام دهید.
post_max_size = 100M upload_max_filesize = 100M
حداکثر زمان اجرا
حداکثر زمانی که برنامه میتواند در پروسه پی اچ پی باقی بماند در این کد قابل تغییر خواهد بود. عدد ذکر شده بر اساس ثانیه است و در صورتی که بار بیش از حدی را به سرور وارد کند پروسه متوقف (kill) میشود.
max_execution_time = 200
حداکثر زمان ورودی
کنترل حداکثر زمان ورودیهای برنامهها بر اساس ثانیه مثل متدهای Get و Post که مقدار را وارد میکنند با استفاده از این کد قابل تغییر خواهند بود.
max_input_time = 200
حداکثر تعداد متغیر (Max Input Vars)
منظور از Max Input Vars، حداکثر تعداد متغیرهایی است که در سرور هاست شما برای یک تابع میتوان استفاده کرد. برای اعمال تغییرات برای این مقدار میتوانید از دستور زیر استفاده کنید:
max_input_vars = 10000
توجه داشته باشید که مقدار پیشفرض، عدد 10000 است. در صورت لزوم و نیاز، میتوانید برای مقادیر بیشتر از پشتیبانی نت افراز در مورد مقادیر بیشتر سوال فرمائید.
حداکثر اندازه پست
پس از تغییر حجم مجاز آپلود نیاز است که این مقدار (حداکثر حجم قابل ذخیره در پایگاه داده) را نیز تغییر دهید.
همچنین دقت داشته باشید مقدار این متغییر باید از UPLOAD_MAX_SIZEFILE بیشتر باشد.
post_max_size = 250M
در حال حاضر در صورت خرید هاست از نت افراز میتوانید از کد زیر برای مشاهده تغییرات اعمال شده و جزئیات فایل php.ini مطلع شوید. کافی است کد زیر را در یک فایل با پسوند php. ذخیره نمایید (مثل test.php) سپس این فایل را فراخوانی کنید.
<?php phpinfo(); ?>
در نهایت به یاد داشته باشیم که مدیریت php.ini یک فرآیند مداوم است. با تغییر نیازهای پروژه و ظهور تهدیدات امنیتی جدید، بازنگری و بهروزرسانی منظم این تنظیمات ضروری است.
جمع بندی
در این مقاله، ما به اهمیت و نقش کلیدی فایل php.ini در مدیریت و بهینهسازی محیط اجرایی PHP پرداختیم. این فایل پیکربندی، که به عنوان مرکز کنترل PHP عمل میکند، امکان تنظیم جنبههای مختلف عملکرد، امنیت و کارایی را فراهم میکند.
ما دریافتیم که چگونه تنظیمات مختلف در php.ini میتوانند بر جنبههای حیاتی یک برنامه PHP تاثیر بگذارند.
همچنین، اهمیت تنظیم دقیق این پارامترها بر اساس نیازهای خاص هر پروژه را مورد بحث قرار دادیم. درک صحیح و استفاده مناسب از php.ini میتواند منجر به بهبود قابل توجه در عملکرد، امنیت و قابلیت اطمینان برنامههای PHP شود.
تسلط بر مدیریت php.ini نه تنها به توسعهدهندگان کمک میکند تا برنامههای بهتر و امنتری بسازند، بلکه به آنها این امکان را میدهد تا به طور موثرتری با چالشهای فنی مقابله کنند و تجربه کاربری بهتری را برای مخاطبان خود فراهم آورند.
شاد و پیروز باشید.
با استفاده از فایل .user.ini مشکلم حل شد . ممنون. راه های زیادی رفته بودم و جواب نداده بود اما این راه عالی بود .
سلام ، واقعا لطف بزرگی کردید ، عالی عالی ، بسیار سپاسگزارم
خیلی خیلی ممنونم
یک دنیا تشکر
یک دنیا ممنون
با فایل .user.ini مشکل حل شد ، دمتون گرم
با سلام خدمت شما
بسیار خوشحالیم که تونستیم به شما کمک کنیم.
با تشکر فراوان
سلام و تشکر
فقط در بخش Max Input Vars نوشتین حداقل مقدار 10000 است؛ فکر کنم منظورتون حداکثر هستش
با سلام
ممنون از شما
این میزان، مقدار پیشفرض است.
ویرایش شد.
ممنونم بسیار عالی و کاربردی بود این آموزش
من خیلی سعی کردم خودم یادبگیرم که چطور رفع کنم ولی متاسفانه نتونستم ولی با راهنمایی و آموزش شما کاملا مشکل من حل شد
واقعا نت افراز بهترین پشتیبانی رو داره
با سلام و عرض ارادت
بسیار خوشحالیم که توانستیم در این زمینه به شما یاری برسانیم
با تشکر
این کدها را کجا و چطوری وارد کنیم؟
post_max_size = 100M
upload_max_filesize = 100M
با سلام و درود
طبق آموزش، لازم است تا فایل user.ini. داخل public_html ایجاد شود و داخل آن این تنظیمات اعمال شود.
با تشکر