انتقل إلى محتوى الدرس

Separating public Webroot from Source فصل مجلد العرض العام public عن الكود المصدري

نظّم مشروع تطبيق ويب احترافي في PHP 8 بفصل مجلد public عن الكود المصدري وإدارة إعدادات البيئة وبناء موجه مركزي للروابط.
1 صفوف تعليمية
PHP
0 مشاهدة

شرح صفوف ومحتوى الفقرة

الصف 1 شرح توضيحي

في تطبيقات الويب الاحترافية بلغة PHP، يُضبط مجلد public/ فقط ليكون المسار العام للخادم (DocumentRoot)، مما يحمي ملفات الإعدادات والكلاسات خارج النطاق العام.

  • ضع ملف نقطة الدخول index.php وملفات التنسيق والصور العامة فقط داخل مجلد public/.
  • احفظ الأصناف البرمجية في src/، وقوالب العرض في views/، والإعدادات في config/ خارج مجلد public/.
  • حتى لو حدث خطأ في إعدادات الخادم، لن يتمكن أي زائر أبداً من الوصول المباشر لملفات الكود أو الإعدادات.

تصعد الدالة dirname(__DIR__) مستوى واحداً للأعلى من مجلد public/ لتعريف المسار الجذري BASE_PATH بأمان.

مخطط توضيحي: محاكي الموجه المركزي Front Controller وتوجيه الروابط في PHP 8
PHP
<?php
// File: public/index.php
define('BASE_PATH', dirname(__DIR__));

require BASE_PATH . '/vendor/autoload.php';
$config = require BASE_PATH . '/config/app.php';

echo "App Root: " . BASE_PATH . "\n";
echo "App Name: " . $config['name'] . "\n";