التهيئة
يستخدم Chamilo 2.0 متغيرات البيئة وملفات إعدادات Symfony لإعداداته الأساسية. تغطي هذه الصفحة الملفات والمتغيرات الرئيسية للإعدادات.
متغيرات البيئة (.env)
الملف الرئيسي للإعدادات هو .env في دليل Chamilo الرئيسي. يحتوي هذا الملف على إعدادات خاصة بالبيئة لا يجب إدراجها في نظام التحكم بالإصدارات.
يأتي مع Chamilo ملف .env.dist افتراضي يحتوي على القيم الافتراضية الموثقة. أنشئ .env (مطلوب لبدء التثبيت) لتجاوز القيم لبيئتك.
المتغيرات الرئيسية
APP_ENV
بيئة التطبيق، على مستوى Symfony. استخدم prod للإنتاج، dev للتطوير، 'test' للاختبار.
prod
APP_SECRET
سلسلة عشوائية تُستخدم لرموز CSRF، توقيع الكوكيز، وعمليات التشفير الأخرى. يولد Chamilo قيمة فريدة لكل تثبيت. لا تعدلها.
a1b2c3d4e5f6...
DATABASE_HOST
مضيف قاعدة البيانات. الافتراضي localhost
localhost
DATABASE_PORT
منفذ قاعدة البيانات. الافتراضي 3306 لـ MySQL/MariaDB
3306
DATABASE_NAME
اسم قاعدة البيانات، كما قدمته إلى معالج التثبيت.
انظر أدناه.
DATABASE_USER
اسم مستخدم قاعدة البيانات، كما قدمته إلى معالج التثبيت.
انظر أدناه.
DATABASE_PASSWORD
كلمة مرور مستخدم قاعدة البيانات، كما قدمتها إلى معالج التثبيت.
انظر أدناه.
TRUSTED_PROXIES
(اختياري) إذا كنت تستضيف Chamilo خلف خادم وكيل عكسي، يجب تقديم عنوان(ات) IP لخادم الوكيل العكسي هنا حتى يتمكن Chamilo من تفسير الطلبات وتوليد الردود بشكل صحيح.
الإعدادات الأخرى في .env تُعدل نادراً.
لاحظ أنه، في الإصدارات المستقبلية، ستُجمع إعدادات DATABASE_* في متغير واحد DATABASE_URL.
يتم عرض إعدادات إرسال البريد الإلكتروني أثناء التثبيت، ولكن يمكن تعديلها لاحقاً في قسم إعدادات المنصة في لوحة الإدارة.
إعدادات Symfony (دليل config/)
توجد إعدادات على مستوى Symfony في دليل config/. تتحكم هذه ملفات YAML في سلوك الإطار، تعريفات الخدمات، والإعدادات الخاصة بالحزم.
ليس من الشائع تعديل هذه الملفات، وتغييرها قد يجعل بوابةك غير فعالة، لذا من فضلك لا تحاول تعديلها إذا كنت مضطراً لضمان توافر النظام.
الملفات الرئيسية للإعدادات
config/authentication.yaml
إعدادات طرق المصادقة.
config/packages/doctrine.yaml
إعدادات قاعدة البيانات و ORM.
config/packages/security.yaml
المصادقة، جدران الحماية، التحكم في الوصول، وتسلسلات الأدوار.
config/packages/cache.yaml
إعدادات محول التخزين المؤقت (نظام الملفات، APCu، Redis).
config/packages/framework.yaml
إعدادات إطار Symfony العامة (الجلسة، CSRF، الراوتر، تخزين HTTP المؤقت).
config/packages/twig.yaml
إعدادات محرك القوالب.
config/services.yaml
تعريفات خدمات التطبيق وحقن التبعيات.
التجاوزات الخاصة بالبيئة
يدعم Symfony إعدادات خاصة بكل بيئة. تتجاوز الملفات في config/packages/prod/ الافتراضيات عند APP_ENV=prod، و config/packages/dev/ تتجاوز عند APP_ENV=dev.
على سبيل المثال، يقوم config/packages/prod/monolog.yaml عادةً بإعداد تسجيل أقل تفصيلاً من المقابل في التطوير.
لا يحدد Chamilo أي إعدادات في config/packages/prod/ في البرمجيات نفسها، لذا إذا أردت تخصيص إعداد من config/packages/*.yaml، فقط أنشئ نسخة من ملف yaml داخل ذلك الدليل وقم بتغيير الإعدادات هناك.
صلاحيات الملفات
قمنا في 2.0+ بجهود لضمان أن دليلاً واحداً فقط يحتاج صلاحيات. هذا هو دليل var/، ولتجنب المشكلات المعقدة، مجرد تعيين الدليل بأكمله كقابل للكتابة من قبل مستخدم نظام خادم الويب يكفي.
عيّن الصلاحيات بشكل مناسب تحت أنظمة Debian:
مهام الإعدادات الشائعة
التبديل إلى وضع الإنتاج
ثم امسح ودفّئ التخزين المؤقت:
إعداد الوكلاء الموثوقين
إذا كان Chamilo يعمل خلف خادم وكيل عكسي أو موازن حمل، قم بإعداد الوكلاء الموثوقين حتى يعمل كشف HTTPS وحل عنوان IP للعميل بشكل صحيح:
إعداد تخزين الجلسات
افتراضياً، تُخزن الجلسات على نظام الملفات. للنشر على خوادم متعددة، قم بإعداد جلسات مدعومة بـ Redis أو قاعدة بيانات:
نصائح
لا تقم بتحرير
.env.distمباشرة -- استخدم دائمًا.envللتجاوزات الخاصة بك. قد يتم الكتابة فوق ملف.env.distأثناء الترقيات.احتفظ بـ
APP_DEBUG=0في الإنتاج -- وضع التصحيح يكشف معلومات حساسة في صفحات الأخطاء.قم بعمل نسخة احتياطية لـ
.envبشكل منفصل عن قاعدة الكود لأنه يحتوي على بيانات الاعتماد ويُستثنى من التحكم في الإصدارات.
آخر تحديث
هل كان هذا مفيدا؟