Temel kimlik doğrulama, uygulamanıza varılmadan önce bir yolun önüne tarayıcının parola sorusunu koyar. Deneme siteleri, bir iç araç ya da bir yönetim alanına ikinci bir kilit için idealdir.

Parola dosyasını oluşturun

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 dosyanın üzerine yazar. Onu bir kez kullanın ve aynı dosyada bir daha asla; yoksa içindeki bütün öbür hesapları az önce silmiş olursunuz.

Nginx

location /staging/ {
    auth_basic "Restricted";
    auth_basic_user_file /etc/nginx/.htpasswd;
}

Apache ve LiteSpeed

AuthType Basic
AuthName "Restricted"
AuthUserFile /etc/nginx/.htpasswd
Require valid-user

Neyi korur

  • Bir deneme sitesini arama motorlarından ve gelip geçen ziyaretçilerden.
  • Bir yönetim yolunu, uygulamanıza varmadan önce otomatik giriş denemelerinden.
  • Kod yazmadan sessizce kapatmak istediğiniz her şeyi.

Neyi korumaz

  • Gizliliği ancak TLS'iniz kadardır. http üzerinde parola her istekte neredeyse düz metin olarak gider.
  • Ne kilitlenme vardır ne de kimin girdiğine dair bir kayıt - o bir hesap değil, ortak bir paroladır.
  • Kimlik bilgisi göndermeyi bilmeyen API'leri ve web kancalarını bozar. O yolları açıkça muaf tutun.
location /staging/api/webhook {
    auth_basic off;
}
Bir deneme sitesi için ayrıca add_header X-Robots-Tag "noindex, nofollow"; ekleyin. Temel kimlik doğrulama tarayıcıları zaten dışarıda tutar; başlık ise koruma bir gün yanlışlıkla kaldırılırsa siteyi dizinin dışında tutar.