التوثيق الأساسيّ يضع نافذةَ كلمة مرورٍ من المتصفّح أمام مسارٍ ما، قبل أن يُبلَغ تطبيقك. وهو مثاليٌّ لمواقع التجربة، أو لأداةٍ داخليّة، أو لقفلٍ ثانٍ على منطقةٍ إداريّة.
أنشئ ملفّ كلمات المرور
sudo apt-get install -y apache2-utils
sudo htpasswd -c /etc/nginx/.htpasswd sara # -c creates; omit it to ADD
sudo chmod 640 /etc/nginx/.htpasswd
sudo chown root:www-data /etc/nginx/.htpasswd
الرايةُ -c تكتب فوق الملفّ. استعملها مرّةً واحدة ولا تعد إليها على الملفّ نفسه أبدًا، وإلّا فقد حذفتَ للتوّ كلَّ حسابٍ آخر فيه.
Nginx
location /staging/ {
auth_basic "Restricted";
auth_basic_user_file /etc/nginx/.htpasswd;
}
Apache وLiteSpeed
AuthType Basic
AuthName "Restricted"
AuthUserFile /etc/nginx/.htpasswd
Require valid-user
ما يحميه
- موقعَ التجربة من محرّكات البحث ومن الزائر العابر.
- مسارًا إداريًّا من محاولات الدخول الآليّة، قبل أن تبلغ تطبيقك.
- كلَّ ما تريد إغلاقه في هدوء بلا كتابة شفرة.
وما لا يحميه
- خصوصيّته من خصوصيّة تشفيرك لا أكثر. فعلى http تُرسَل كلمةُ المرور شبه صريحة مع كلّ طلب.
- ولا إغلاقَ بعد الإخفاق ولا سجلَّ بمن دخل — فهي كلمةُ مرورٍ مشتركة لا حساب.
- ويكسر الواجهات البرمجيّة وخطّافات الوِب التي لا تعرف أن ترسل بيانات اعتماد. فاستثنِ تلك المسارات صراحةً.
location /staging/api/webhook {
auth_basic off;
}
ولموقع التجربة أضف
add_header X-Robots-Tag "noindex, nofollow"; كذلك. فالتوثيق الأساسيّ يُبعد الزواحف أصلًا، والترويسةُ تُبقيه خارج الفهرس إن رُفعت الحمايةُ يومًا سهوًا.
