مقدمة

حماية المجلد بكلمة مرور (المصادقة الأساسية HTTP) تمنع عرض الملفات عبر المتصفح من خلال طلب اسم مستخدم وكلمة مرور. يوفر cPanel واجهة مبسّطة تُسمى «Directory Privacy» تقوم بإنشاء وإدارة الملفات .htaccess و .htpasswdإذا لم تكن هذه الواجهة متاحة، يمكنك إعادة إنشاء نفس الآلية يدويًا عن طريق تحرير هذه الملفات.

المراجع الرسمية: Directory Privacy — وثائق cPanel · htpasswd — وثائق Apache.

المتطلبات

  • الوصول إلى حساب cPanel الخاص بك. (انظر: كيفية الوصول إلى حساب cPanel الخاص بي؟).
  • الوصول إلى مدير الملفات (File Manager) في cPanel أو الوصول عبر SSH/الطرفية في cPanel إذا فضّلت سطر الأوامر.
  • معرفة مسار المجلد الذي تريد حمايته (على سبيل المثال public_html/staging).
  • تفعيل عرض الملفات المخفية في مدير الملفات لرؤية .htaccess (انظر: عرض الملفات المخفية في مدير الملفات الخاص بـ cPanel).
  • ملاحظة : قد يقوم بعض مزوّدي الاستضافة بتعطيل واجهة Directory Privacy — في هذه الحالة اتبع الطريقة اليدوية أدناه.

الطريقة الموصى بها — Directory Privacy (واجهة cPanel)

عند توفر الخيار، استخدم الواجهة: فهي تؤتمت إنشاء ملف المستخدمين (.htpasswd.htpasswd) وكتابة التوجيهات في .htaccess .htaccess.

  1. سجّل الدخول إلى cPanel وافتح القسم Files → Directory Privacy.
  2. في القائمة، ابحث عن المجلد الذي تريد حمايته وانقر عليه (أو استخدم Edit في عمود Actions).
  3. ضع علامة على Password protect this directory (حماية بكلمة مرور)، أدخل اسمًا واضحًا لتسمية المنطقة ثم انقر Save.
  4. في قسم إدارة المستخدمين، أنشئ حسابًا مصرحًا به: أدخل اسم مستخدم وكلمة مرور قوية (أو استخدم المولد المدمج)، ثم Create / Save.
  5. اختبر ذلك بفتح عنوان URL للمجلد في متصفح في نافذة تصفح خاصة: يجب أن تظهر نافذة طلب تسجيل دخول HTTP.

نصائح عملية

  • تنطبق الحماية على المجلد المحدد وعلى المجلدات الفرعية التابعة له.
  • Directory Privacy يكتب (أو يعدّل) .htaccess .htaccess ويُنشئ ملف .htpasswd، .htpasswd غالبًا ما يُوضَع في مجلد آمن داخل الحساب (المسار يعتمد على مزود الاستضافة).
  • إذا رفضت الواجهة إنشاء مستخدم، فتحقق وحاول تعديل أذونات الدليل مؤقتًا (مثلاً 0700) ثم أنشئ المستخدم. 0700) ثم أنشئ المستخدم.

ملاحظة مهمة

إذا كان موقعك يستخدم بالفعل قواعد إعادة الكتابة (WordPress، أطر العمل)، فإن القواعد الموجودة في .htaccess قد تمنع عرض مطالبة المصادقة. راجع قسم استكشاف الأخطاء وإصلاحها أدناه.

الطريقة اليدوية — إنشاء .htpasswd و .htaccess

استخدم هذه الطريقة إذا لم تكن واجهة Directory Privacy متاحة أو إذا رغبت في التحكم بدقة في الملفات.

1) الموقع الموصى به لـ .htpasswd

ضع الملف .htpasswd ويُفضّل خارج شجرة الأدلة العامة (public_html) حتى لا يكون قابلاً للتنزيل. مثال لمجلد خاص: /home/ACCOUNTUSER/.htpasswds/mondossier/passwd استبدل ACCOUNTUSER باسم الحساب. إذا لم تتمكن من إخراج الملف من webroot، فقم بحمايته لاحقًا بواسطة قاعدة Apache (انظر قسم استكشاف الأخطاء وإصلاحها).

2) إنشاء الملف .htpasswd

  1. باستخدام SSH أو Terminal cPanel: استخدم htpasswd (أداة مقدمة من Apache). مثال:
    htpasswd -c /home/ACCOUNTUSER/.htpasswds/mondossier/passwd monuser
    الخيار -c ينشئ الملف؛ تجاهله إذا كنت تضيف مستخدماً موجوداً. سيطلب الأمر كلمة المرور ويسجّل السطر المشفّر monuser:hashedpassword.
  2. بدون SSH: أنشئ محليًا ملفًا نصيًا يحتوي على (السطر أو الأسطر) المشفّرة بالصيغة user:hash وارفعه عبر File Manager إلى المكان المختار. إذا لم تعرف كيفية توليد الهاش، فاستخدم Terminal cPanel أو اطلب المساعدة من الدعم.
طرفية cPanel لتشغيل أوامر مثل htpasswd
الطرفية في cPanel — مفيدة لتنفيذ htpasswd أمر htpasswd إذا لم يتوفر لديك وصول SSH خارجي.

3) إنشاء/تعديل ملف .htaccess .htaccess في المجلد المراد حمايته

في مجلد الويب الذي تريد حمايته (مثلاً public_html/stagingpublic_html/staging). .htaccess وأضف أو عدّل ملف .htaccess بالتوجيهات التالية (مثال):

AuthType Basic
AuthName "Zone protégée"
AuthUserFile /home/ACCOUNTUSER/.htpasswds/mondossier/passwd
Require valid-user

- AuthUserFile يجب أن يحتوي AuthUserFile على المسار المطلق إلى ملف .htpasswd الخاص بك .htpasswd (استبدل ACCOUNTUSER ACCOUNTUSER والمسار).
- Require valid-user التوجيه Require valid-user يسمح لجميع الحسابات الموجودة في ملف .htpasswd .htpasswdلتقييد الوصول إلى مستخدم واحد فقط: Require user monuserمثال: Require user monuser

تعديل ملف .htaccess من خلال File Manager في cPanel
تعديل ملف .htaccess .htaccess من خلال File Manager. فعّل عرض الملفات المخفية إذا لزم الأمر.

4) رفع الملفات والتحقق

  1. ارفع ملف .htpasswd .htpasswd إلى الموقع الخاص الذي اخترته وتحقق من الأذونات (على سبيل المثال 600 600 للملف).
  2. في File Manager، افتح المجلد المحمي وتحقق من أن ملف .htaccess يحتوي على التوجيهات أعلاه. .htaccess يحتوي على التوجيهات المذكورة أعلاه.
  3. اختبر في نافذة تصفّح خاصة: انتقل إلى https://votre‑domaine.tld/staging/ وتحقق من ظهور نافذة المصادقة.
رفع ملف داخل public_html باستخدام مدير الملفات (File Manager) في cPanel
استخدم الزر تحديد ملف لرفع .htpasswd (إذا لم تتمكن من إنشاء الملف عبر الطرفية.)

نصائح وقيود

  • تحمي مصادقة HTTP الأساسية (Basic Auth) الوصول عبر متصفحات HTTP/HTTPS. لكنها لا تحمي الوصول عبر FTP/SFTP، ولا الوصول المباشر عبر Web Disk، ولا الوصول إلى نظام الملفات على الخادم.
  • ضع .htpasswd خارج webroot عندما يكون ذلك ممكنًا: هذه أفضل ممارسة من ناحية الأمان.
  • في بعض الخوادم (مثل تكوينات LiteSpeed أو البروكسيات العكسية)، قد تحل رسالة خطأ 404 محل الاستجابة 401 المتوقعة. حل شائع: إنشاء صفحة 401.html وأضف ErrorDocument 401 /401.html في الـ .htaccess المحمى.
  • إذا كان تطبيقك يستخدم قواعد mod_rewrite (مثل WordPress)، ضع توجيهات المصادقة في بداية الـ .htaccess لكي تُنفّذ قبل عمليات إعادة الكتابة.

استكشاف الأخطاء وإصلاحها السريع

  1. نافذة تسجيل الدخول المنبثقة لا تظهر : افرغ ذاكرة التخزين المؤقت، اختبر في نافذة خاصة. تحقق من وجود .htaccess يحتوي على توجيهات المصادقة في المجلد المستهدف. ابحث عن ملفات .htaccess في المجلدات الأبوية التي قد تعيد توجيه الطلبات أو تمريرها عبر بروكسي.
  2. تعذّر إنشاء مستخدم عبر Directory Privacy : تحقّق من أذونات ومالك المجلد المستهدف (جرّب مؤقتًا ضبط الأذونات على 0700 0700) ثم أعد المحاولة.
  3. تم رفض بيانات الاعتماد : تحقّق من مسار AuthUserFile AuthUserFile، وأن ملف .htpasswd .htpasswd يحتوي فعلاً على اسم المستخدم وأن الأذونات تسمح لخادم الويب بقراءة الملف.
  4. 404 بدلاً من 401 : أضف ملفًا 401.html 401.html والتعليمة ErrorDocument 401 /401.html ErrorDocument 401 /401.html في ملف .htaccess .htaccess المحمي.
  5. الملف .htpasswd .htpasswd قابل للوصول علنًا : انقله خارج public_html public_html؛ وإلا أضف في جذر المجلد العام حماية لهذا الملف (Apache 2.4):
    <Files ".htpasswd">
      Require all denied
    </Files>
  6. اختبار من سطر الأوامر (خيار متقدّم):
    curl -I --user monuser https://votre-domaine.tld/staging/
    يجب أن تُرجِع استجابة HTTP الحالة 401 إذا كانت الحماية مفعلة (قبل تقديم بيانات الاعتماد) أو 200/302 بعد المصادقة الناجحة.

روابط داخلية مفيدة

هل تحتاج إلى مساعدة؟

إذا لم تعمل الحماية بعد هذه الفحوصات، فافتح تذكرة مرفقًا: عنوان URL الذي اختبرته، المجلد المحمي، الطريقة المستخدمة (Directory Privacy أو الطريقة اليدوية)، ولقطات شاشة لمحتوى ملف .htaccess الخاص بك .htaccess ومسار AuthUserFile AuthUserFile. انظر كيفية الاتصال بالدعم.

المراجع

تم الاطلاع على الوثائق في 17 أكتوبر 2026. قد تختلف الأدوات حسب مزود الاستضافة.