أين يوجد ملف php.ini؟ 5 أخطاء قاتلة وكيفية تجنبها

مدرب بايثون أونلاين للمبتدئين

تعلم Python بسهولة دون إرهاق نظري. حل مهام عملية مع التحقق التلقائي واكتب الكود مباشرة في المتصفح.

ابدأ الدورة

«أين هذا الملف اللعين php.ini؟» — سؤال يثير حيرة حتى المطورين المخضرمين

\n\n

هل سبق لك أن شعرت وكأنك صياد كنوز، ولكن بدلاً من الذهب تبحث عن ملف php.ini؟ إذا كان الأمر كذلك، فأنت لست وحدك. سؤال «أين يمكنني العثور على php.ini؟» على Stack Overflow حصد عشرات الآلاف من المشاهدات. وهذا ليس من قبيل الصدفة.

\n\n

تخيل: لقد قمت بتثبيت PHP، وكتبت كوداً مثالياً، لكنه يرفض بعناد العمل. أو تقوم بتغيير الإعدادات في php.ini، وتعيد تشغيل الخادم، ولكن التغييرات… لا تُطبق. هل يبدو ذلك مألوفاً؟ مرحباً بك في النادي.

\n\n

في هذه المقالة، لن نكتفي بإظهار مكان وجود php.ini. بل سنحلل أكثر 5 أخطاء شيوعاً التي يقع فيها المطورون، ونقدم تعليمات واضحة لتجنبها. هيا بنا!

\n\n

ما هو php.ini وما فائدته؟

\n\n

php.ini هو ملف الإعدادات الرئيسي لـ PHP. من خلاله تتحكم في سلوك اللغة: بدءاً من الحد الأقصى لحجم الملف المرفوع، وصولاً إلى مدة تنفيذ السكريبت. بدونه، يعمل PHP «على هواه» — بالإعدادات الافتراضية.

\n\n

إليك بعض المعلمات التي يمكنك تغييرها في php.ini:

\n\n
    \n
  • upload_max_filesize — الحد الأقصى لحجم الملف المرفوع
  • \n
  • max_execution_time — أقصى مدة لتنفيذ السكريبت
  • \n
  • memory_limit — حد الذاكرة للسكريبت
  • \n
  • display_errors — إظهار الأخطاء على الشاشة أم لا
  • \n
  • error_reporting — مستوى عرض الأخطاء
  • \n
\n\n

المشكلة هي أن موقع php.ini يختلف باختلاف أنظمة التشغيل والبيئات. وهذه هي أول فخ للمبتدئين.

\n\n

أين تبحث عن php.ini: دليل سريع لجميع أنظمة التشغيل

\n\n

لينكس (Ubuntu, Debian, CentOS)

\n\n

على لينكس، قد يكون الملف في عدة أماكن. أشهرها:

\n\n
/etc/php/8.1/cli/php.ini   # لسطر الأوامر (CLI)\n/etc/php/8.1/apache2/php.ini # لخادم Apache\n/etc/php/8.1/fpm/php.ini     # لـ PHP-FPM
\n\n

لاحظ: إصدار PHP (8.1) قد يختلف. إذا كان لديك PHP 8.0، سيكون المسار /etc/php/8.0/....

\n\n

كيف تجده بسرعة؟ نفّذ في الطرفية:

\n\n
php --ini
\n\n

سيظهر لك هذا الأمر المسار إلى ملف الإعدادات المُحمّل.

\n\n

ويندوز

\n\n

على ويندوز، عادةً ما يكون php.ini في مجلد تثبيت PHP:

\n\n
C:\\php\\php.ini\nC:\\Program Files\\PHP\\php.ini\nC:\\xampp\\php\\php.ini    # إذا كنت تستخدم XAMPP\nC:\\wamp64\\bin\\php\\php8.1.0\\php.ini  # لـ WAMP
\n\n

ماك (macOS)

\n\n

على macOS (إذا تم تثبيت PHP عبر Homebrew):

\n\n
/usr/local/etc/php/8.1/php.ini\n/opt/homebrew/etc/php/8.1/php.ini  # لمعالجات Apple Silicon
\n\n

إذا كنت تستخدم PHP المدمج من Apple (لا ننصح به)، فقد يكون المسار مختلفاً.

\n\n

دوكر (Docker)

\n\n

في حاوية Docker، المسار الافتراضي للينكس:

\n\n
/usr/local/etc/php/php.ini
\n\n

لكن من الأفضل تثبيت php.ini الخاص بك عبر volumes:

\n\n
docker run -v /path/to/your/php.ini:/usr/local/etc/php/php.ini my-php-app
\n\n

أهم 5 أخطاء عند العمل مع php.ini (وكيفية تجنبها)

\n\n

الخطأ رقم 1: أقوم بتعديل ملف php.ini الخاطئ

\n\n

هذه هي المشكلة الأكثر شيوعاً. تفتح ملفاً، تغير الإعدادات، تعيد تشغيل الخادم، لكن PHP يستمر في العمل بالإعدادات القديمة. لماذا؟ لأنك قمت بتعديل الملف الخطأ!

\n\n

قد يستخدم PHP ملفات php.ini مختلفة لسطر الأوامر (CLI) ولخادم الويب (Apache/Nginx).

\n\n

كيف تتجنب ذلك:

\n\n
    \n
  1. أنشئ ملف PHP بالمحتوى التالي:
  2. \n
\n\n
<?php\nphpinfo();\n?>
\n\n
    \n
  1. شغّله في المتصفح (إذا كنت تختبر نسخة الويب) أو في الطرفية (php yourfile.php).
  2. \n
  3. ابحث عن السطر Loaded Configuration File — هذا هو مسار الملف النشط.
  4. \n

المدونات

توصيات الكتب