أثناء رفع مشروع Laravel على استضافة مثل هوستنجر، العديد من المطورين يقومون بخطوات خاطئة قد تعرض المشروع بالكامل للاختراق. في هذا المقال، سنوضح الخطأ الشائع والطريقة الصحيحة الآمنة لحل مشكلة /public في رابط الموقع.

الخطأ الشائع

العديد يقوم بعمل إعادة تسمية لملف server.php إلى index.php ونقل ملف .htaccess من داخل مجلد public إلى المجلد الرئيسي. ورغم أن هذا يجعل الرابط يعمل بدون /public إلا أنه يعرض ملفات حساسة جداً مثل .env للوصول المباشر.

لماذا هذا خطير؟

عند كشف ملف .env يستطيع أي شخص معرفة:

  • معلومات قاعدة البيانات
  • مفاتيح التشفير
  • SMTP بيانات البريد
  • أي أسرار خاصة بالمشروع

ومن هنا يمكنه السيطرة الكاملة على الموقع أو حتى السرفر.

الحل الصحيح الآمن

اترك جميع الملفات في أماكنها، ولا تقم بنقل أي ملفات أو إعادة تسمية أي شيء. فقط قم بإضافة ملف .htaccess في المجلد الرئيسي للمشروع بمحتوى:

RewriteEngine On
RewriteCond %{REQUEST_URI} !^/public/
RewriteRule ^(.*)$ /public/$1 [L,QSA]

نصيحة متقدمة

إذا كانت لديك صلاحيات على إعدادات الاستضافة، قم بتعيين مسار Document Root ليشير مباشرة إلى مجلد public فهذا هو الإعداد الأمثل والأسلم.

الخلاصة

لا تبحث عن الحل الأسرع دائماً، لأن بعض الطرق قد تبدو صحيحة ولكنها تفتح بابًا لمشاكل أمنية خطيرة. استخدم التوجيه عبر .htaccess أو إعداد Document Root لضمان عمل المشروع بشكل صحيح وآمن.