تعديل إعدادات PHP
يتضمن ServBay بيئة PHP ويقدم خيارات تكوين مرنة. ستتناول هذه المقالة كيفية تعديل إعدادات PHP في ServBay بالتفصيل، بما في ذلك مواقع ملفات php.ini
و php-fpm.conf
وعناصر التكوين الشائعة. تعتمد مواقع هذه الملفات على إصدار PHP، وتتواجد في الدليل /Applications/ServBay/etc/php/<version>
. علاوة على ذلك، توجد ملفات تكوين تحميل الموديلات مثل xdebug.ini
في الدليل /Applications/ServBay/etc/php/<version>/conf.d
.
تحذير هام
يرجى عدم تعديل ملفات التكوين يدويًا. يتم إنشاء جميع هذه الملفات تلقائيًا من قبل ServBay، وقد يتم استبدال التعديلات اليدوية. يُرجى استخدام واجهة المستخدم (UI) لإجراء التعديلات.
نظرة عامة
في ServBay، يتم تخزين ملفات إعدادات PHP في دلائل مختلفة بناءً على الإصدار. على سبيل المثال، ملف تشغيل PHP لإصدار 8.3 يتواجد في المسار /Applications/ServBay/etc/php/8.3
. إليك المواقع التفصيلية لهذه الملفات:
php.ini
:/Applications/ServBay/etc/php/8.3/php.ini
php-fpm.conf
:/Applications/ServBay/etc/php/8.3/php-fpm.conf
- ملفات تكوين تحميل الموديلات:
/Applications/ServBay/etc/php/8.3/conf.d/
تعديل الإعدادات عبر واجهة المستخدم في ServBay
يأتي ServBay مزودًا بواجهة مستخدم رسومية قوية، يمكن للمستخدمين من خلالها تعديل معايير التكوين المختلفة مباشرة من خلالها. عند الضغط على زر "حفظ"، سيتم تطبيق التعديلات على الفور ودون الحاجة لتحرير الملفات يدوياً.
يمكن فتح "اللغة" من شريط التنقل الموجود على اليسار، ثم اختيار إصدار PHP المطلوب تعديله، وسيظهر لك قائمة عبر الجانب الأيمن. فيما يلي نموذج لواجهة المستخدم:
في الواجهة، يتم تقسيمها إلى 3 عناصر تكوين مختلفة. وهي تتوافق مع إعدادات تكوين PHP-FPM وPHP والموديلز. وسيتم توضيح كل منها في الأقسام التالية.
PHP FPM
تلميح
الإعدادات في php-fpm.conf
تحدد سلوك PHP عند تشغيله كخدمة ويب، وستتفوق (أي ستتجاوز) أي إعدادات في php.ini
.
ومع ذلك، فإن الإعدادات هنا لن تؤثر على سلوك PHP المستخدم في cli.
أولاً، هناك واجهة إعدادات PHP FPM. سواء كنت تستخدم Caddy أو NGINX، يتم تشغيل PHP في ServBay كخدمة FPM. في هذه الواجهة، يمكن تعديل عدد عمليات FPM، وحدود الذاكرة، ومستوى أخطاء السجلات، وما إذا كان ينبغي عرض الأخطاء في المتصفح.
على سبيل المثال، إذا كنت تريد تعديل Memory Limit
في إعدادات الويب من 64M إلى 1G، يمكنك فقط اختيار 1G
من قائمة Memory Limit
المنسدلة وحفظ التعديلات. هذا التغيير لن يؤثر على إعدادات php.ini
، حيث أن تشغيل PHP في cli سيظل يتبع إعدادات php.ini
.
إذا كان إعداد Memory Limit
في php.ini
هو 512M
، وكان إعداد Memory Limit
في PHP FPM
هو 128M
، فسيمكن للسكربت الاعتيادي استخدام 512M في cli و128M في الويب.
php.ini
تلميح
إعدادات php.ini
هي عالمية، وتؤثر على سلوك كافة العمليات في cli والويب. لكن ملاحظ أن إعدادات php.ini
قد يتم تجاوزها بواسطة php-fpm.conf
في الويب.
يشير جزء إعدادات PHP إلى خيارات الإعدادات في php.ini
، وهو ملف الإعدادات الأساسي لـ PHP. يمكنك هنا تعديل معظم إعدادات php.ini
مثل post_max_size
الذي يؤثر على حجم النموذج عبر POST، وupload_max_filesize
الذي يؤثر على حجم الملفات المرفوعة. هناك أيضًا disable_functions
وdisable_classes
لتعطيل بعض الوظائف أو الفئات.
ملاحظة: نظرًا لأن الإعدادات هي عالمية، إن كنت ترغب في ضبط open_basedir
، يُفضل توحيد مشاريع المواقع تحت /Applications/ServBay/www
في حالة الحاجة لاستخدام نفس الدليل في إعداد open_basedir
.
للحصول على تفاصيل كاملة عن حقول الإعدادات، يرجى الرجوع إلى الوثائق الرسمية لإعدادات php.ini على الموقع الرسمي للـ PHP.
الموديلات الإضافية
يقدم ServBay مجموعة كبيرة من الموديلات الإضافية الشائعة لـ PHP، مثل xDebug
، OPcache
، Image Magick
، Redis
، MongoDB
، Phalcon
، وSwoole
. للحصول على قائمة كاملة بالموديلات، يمكنك زيارة قائمة موديلات PHP.
يمكن تفعيل الموديلات الإضافية بسهولة عبر النقر على زر التفعيل ثم الضغط على زر الحفظ. بالنسبة لموديلات مثل xDebug التي تحتوي على خيارات إعدادات إضافية، يمكن تعديلها بسهولة أيضًا.
تعديل الإعدادات يدويًا عبر تحرير ملفات التكوين
WARNING
تعديل ملفات التكوين بطريقة يدوية مناسب فقط للتغييرات المؤقتة لبعض إعدادات التكوين.
نحن لا نوصي بتعديل ملفات إعدادات PHP بالطريقة اليدوية، لأن جميع التعديلات سيتم تجاوزها بواسطة ServBay.
إعداد php.ini
ملف php.ini
هو الملف الرئيسي لإعدادات PHP ويستخدم لتحديد الخيارات المختلفة لـ PHP أثناء التشغيل.
إعدادات شائعة
الآتي هو بعض إعدادات php.ini
الشائعة وطرق تعديلها:
تعديل حد الذاكرة:
memory_limit = 256M
1تعديل حد حجم الملفات المرفوعة:
upload_max_filesize = 50M post_max_size = 50M
1
2تعديل إعدادات المنطقة الزمنية:
date.timezone = "Asia/Hong_Kong"
1تمكين عرض الأخطاء:
display_errors = On error_reporting = E_ALL
1
2تعديل وقت التنفيذ الأقصى:
max_execution_time = 300
1
إعداد php-fpm.conf
يُستخدم ملف php-fpm.conf
لتكوين معايير تشغيل PHP-FPM (مدير العمليات السريعة CGI).
إعدادات شائعة
الآتي هو بعض إعدادات php-fpm.conf
الشائعة وطرق تعديلها:
تعديل إعدادات مجموعة العمليات:
[www] listen = /Applications/ServBay/tmp/php-cgi-8.3.sock listen.backlog = -1 listen.allowed_clients = 127.0.0.1 ;listen.owner = www ;listen.group = www listen.mode = 0666 ;user = www ;group = www pm = dynamic pm.max_children = 10 pm.start_servers = 2 pm.min_spare_servers = 1 pm.max_spare_servers = 6 pm.max_requests = 1024 pm.process_idle_timeout = 10s
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16تمكين سجل العمليات البطيئة:
request_slowlog_timeout = 5s slowlog = /Applications/ServBay/logs/php/8.3/slow.log
1
2تعديل مسار سجلات الأخطاء:
error_log = /Applications/ServBay/logs/php/8.3/errors.log
1
إعداد تحميل موديلات PHP
توجد ملفات تكوين تحميل الموديلات لمسار /Applications/ServBay/etc/php/8.3/conf.d/
، مثلاً ملف xdebug.ini
يُستخدم لتكوين تمديد Xdebug.
مثال لـ xdebug.ini
الآتي هو نموذج لملف xdebug.ini
:
[Xdebug]
; Uncomment the following line to enable XDebug
zend_extension = xdebug.so
xdebug.mode=debug,develop
xdebug.start_with_request=yes
xdebug.client_host=localhost
xdebug.client_port=39083
xdebug.log=/Applications/ServBay/logs/xdebug/8.3/xdebug.log
2
3
4
5
6
7
8
إعادة تشغيل PHP
بعد تعديل إعدادات PHP، يجب إعادة تشغيل خدمة PHP لتطبيق التغييرات. يمكنك القيام بذلك عبر واجهة إدارة ServBay أو باستخدام أداة سطر الأوامر servbayctl
.
إعادة التشغيل عبر واجهة إدارة ServBay
- افتح واجهة إدارة ServBay.
- انتقل إلى
الخدمات
. - ابحث عن خدمة PHP للإصدار المناسب واضغط زر
إعادة التشغيل
.
إعادة التشغيل عبر servbayctl
يمكن استخدام أداة سطر الأوامر servbayctl
لإعادة تشغيل خدمة PHP بسهولة:
servbayctl restart php 8.3
خاتمة
في ServBay، توجد ملفات إعدادات PHP في الدليل /Applications/ServBay/etc/php/<version>
، بما في ذلك php.ini
وphp-fpm.conf
. تتواجد ملفات تكوين تحميل الموديلات في الدليل /Applications/ServBay/etc/php/<version>/conf.d/
. بعد تعديل هذه الملفات، يمكن إعادة تشغيل خدمة PHP عبر واجهة إدارة ServBay أو باستخدام أداة سطر الأوامر servbayctl
لتطبيق التغييرات.