فایل php.ini چیست

  • آپدیت شده در تاریخ

فایل php.ini چیست

در هنگام نصب php , فایل php.ini نیز همراه با آن با یک سری از تنظیمات پیش فرض ایجاد می شود . فایل php.ini شامل دستوراتی با مقادیر پیش فرض را داراست . این مقادیر به دو صورت هستند .

  • Value Directive –  این مقادیر شامل مسیر یک فایل هستند . برای مثال , include_path یک مقدار directive است که برای ذخیره مسیری که باید فراخوانی شود است , اگر هیچ فایل یا url ی برای تابع include مشخص نشود .
  • Flag directive – این دستورات می توانند با مقادیر boolean ست یا آنست شوند . مثلا on/off , 1/0 , true/false و غیره .. . برای مثال REGISTER_GLOBALS از وقتی که به عنوان یک مقدار منسوخ معرفی شد , به طور پیش فرض off است .

فایل php.ini شامل دو بخش بر اساس value و flag می تواند set شود . این بخش ها به صورت زیر است .

  • HOST – این دستور برای ست کردن اسم هاست فایل اجرایی به کار می رود . بعد از این بخش می توانیم دستورات مورد نظر را ست کنیم

مثلا اینجا با مشخص کردن display_errors با مقدار off تعیین کردیم که پروژه های phpی که با این آدرس اجرا می شوند هیچگونه خطایی را نمایش ندهند .

  • PATH – این دستور برای تنظیم یک سری کانفیگ ها برای دایرکتری خاص (کاربر) استفاده می شود .

پیکربندی فایل php.ini

فایل php.ini در مسیر نصب php قرار دارد . اگر پکیج xampp را نصب کرده باشید . می توانید از مسیر c:\xampp\php آن را پیدا کنید .

همچنین اگر از سرور لینوکسی استفاده می کنید می توانید از خروجی تابع phpinfo() مسیر فایل php.ini را پیدا کنید .

فایل php.ini چیست

بعد از نصب php , می توانیم یک یا چندین نسخه از فایل php.ini را بیابیم .باید نسخه پیشنهادی را انتخاب کنیم . برای مثال نسخه های php.ini_dist و php.ini_recommended که یکی از آنها را بنا به نیاز انتخاب و به php.ini تغییر نام بدیم . به طور مثال برای کارایی و امنیت بیشتر بهتر است از فایل php.ini_recommended استفاده و آن را به php.ini تغییر نام بدید.

همچنین اگر php را از طریق پکیج XAMPP نصب کرده باشیم .  نسخه های دیگری از این فایل مثل php.ini-development و php.ini-production وجود خواهند داشت که نسحه پیشنهادی ما php.ini-development است که باید آن را به php.ini تغییر بدید (فایل php.ini قبلی با یک بکاپ گرفته و بعد حذف کنید یا اینکه تغییر نام بدید .)

فایل php.ini چیست

ایجاد تغییرات

می توانیم یک سری از موارد پایه ای را تغییر بدیم . مثلا اگر قصد دسترسی به یک فایل از یک سرور دیگر از طریق url داشتید باید مقدار allow_url_fopen را فعال کنید . بعد از ایجاد هر تغییری در فایل php.ini حتما باید سرویس ها را یکبار ریستارت کنید (از طریق xampp) یا اگر سرور لینوکسی دارید با دستورات :

بستگی به نوع وب سرور شما (آپاچی یا لایت اسپید) یکی از دستورات بالا را به کار ببرید

تغییرات بعد از ریستارت وب سرور در محیط php اعمال خواهند شد .

پیکربندی فایل php.ini

این فایل شامل متغییر های محیطی مثل error handling‌ (مدیریت خطا) , دسترسی remote , آپلود فایل ,  تنظیملت مربوط به تصاویر . برای مثال تنظیمات حداکثر حجم فایل آپلودی یا مقدار timeout اجرای یک فایل php و غیره .. .است .

همجنین این فایل شامل دستوراتی برای مدیریت مسایل مربوط به کوکی و سیشن ها نیز است .

با تغییر فایل php.ini می توانید بسیاری از تنظیمات را به دلخواه یکبار برای همیشه ایجاد کنید تا نیازی به استفاده از توابع php در هر دفعه که پروژه های را می نویسید نباشد .

تنظیمات زیادی وحود دارد که لیست موارد مهم و کاربردی را برای شما آوردم که بنا بر نیاز خود هر یک از آن ها را که از اسمشان مشخص است تغییر بدید

هر سوالی داشتید ، از قسمت نظرات اقدام کنید . سریعا ، پاسخگوی سوالات شما هستم .

موفق و پیروز باشید.

 

حسن شفیعی توسعه دهنده وب و موبایل مدیر سایت علاقه خاصی به برنامه نویسی وب و موبایل دارم و هر روز تلاش می کنم به این حوزه مسلط تر شوم و اطلاعاتم را به شکل کاربردی برای علاقه مندان در وب به اشتراک بگذارم. اگر نیاز به برنامه نویس برای انجام پروژه و نوشتن اسکریپت های سمت وب, اپلیکیشن های اندروید و ios, پیدا کردن راه حل توسعه و غیره داشتید حتما از طریق تماس با ما/ واتساپ/ تلگرام بهم پیام بدید. برایتهیه هاست مطمین و پرسرعت کلیک کنید
مطالب زیر را حتما بخوانید
دیدگاه کاربران (۸)

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

  1. Dude ۱۳ آبان ۱۴۰۱

    سلام اقای شفیعی.
    نحوه مخفی کردن path در قسمت Request header .
    من وقتی از قسمت inspect اطلاعات سایت میبینم ادرس کامل مسیر نشون میده(path: /tar/get.php).
    میخواستم کلا ادرس مشخص نباشه به این صورت(path: /) و یا (path: /tar/get)
    ممنون میشم راهنمایی کنید.
    باتشکر

    پاسخ
    1. حسن شفیعی ۱۳ آبان ۱۴۰۱

      سلام. منظورتون کدوم بخش INSPECT هست که این اطلاعات رو میبینید ؟

      پاسخ
      1. Dude ۱۴ آبان ۱۴۰۱

        سلام اقای شفیعی.
        قسمت :path: / < Request Headers < Network < INSPECT

        پاسخ
      2. حسن شفیعی ۱۴ آبان ۱۴۰۱

        سلام.
        داخل فایل php.ini مقدار expose_php رو برابر false قرار بدید و بعد یکبار وب سرور رو ریستارت کنید

        همچنین میتونید داخل .htaccess اسکریپت هم این خط رو قرار بدید (در هاست های اشتراکی ممکنه کار نکنه و باید دسترسی این رو تو سرور داشته باشید تا بشه مخفی کرد)
        Header always unset path
        Header unset path

        پاسخ
      3. Dude ۱۸ آبان ۱۴۰۱

        سلام اقای شفیعی.ممنون
        بله در هاست اشتراکی امکان تغییرات نیست .
        یک سوال دیگه داشتم ازتون.
        گواهی ssl سایت فعال هستش ولی url انکریپت نمیشه.تو بعضی از سایت ها هم url و path هر دو انکریپت شدن.واسه انکریپت کردن ادرسurl تو هاست اشتراکی باید چیکار کرد.

        پاسخ
      4. حسن شفیعی ۱۹ آبان ۱۴۰۱

        سلام.
        url ها سمت سرور اینکریپت میشن ولی شما نمیبینید که شده یا نه. این اینکریپت شدن تو لایه شبکه خود سرور مشخصه

        پاسخ
  2. سعید ۲۰ تیر ۱۴۰۰

    سلام، توی php.ini بخشی هست که تعیین کنه که میشه به سرور ریکوئست فرستاد یا نه؟ من با یه هاست که دارم میخوام برا سرورم یه درخواست ارسال کنم اما همش میزنه http request failed.

    پاسخ
    1. حسن شفیعی ۲۰ تیر ۱۴۰۰

      سلام. خیر فکر نکنم چنین موردی باشه. باید به هاستینگ تیکت بزنید و اگر این مشکل در لوکال هاست وجود داره باید مجدد نصب کنید

      پاسخ
دوره های آموزشی