Apache sunucusunda,.htaccess ve .htpasswd dosyalarını kullanarak bir dizini parolayla korumak mümkündür. .htaccess dosyaları convert etsenizde Nginx hala parola dizinlerinizi korumayı desteklemez, ancak bunun yerine bir basic_auth.conf dosyası kullanmanız gerekir.
Dosyayı oluşturma
SSH üzerinden sunucunuza giriş yapın. İlk önce kullanıcımızı ve şifremizi oluşturalım. Bunun için htpasswd komutunu kullanacağız. Eğer htpasswd
komutu çalışmıyor ise htpasswd komutunu çalıştırma sayfamızı ziyaret edebilir siniz.
htpasswd -c /etc/nginx/example.com/.htpasswd test
test, giriş isteminde kimlik doğrulaması yapmak için kullanılmak istediğiniz kullanıcı adıdır. Bunun yerine siz kendi belirlediğiniz kullanıcı adını yazabilir siniz.
Bu komutu yazdıktan sonra, parolanızı oluşturmanız için sizden yeni parola bilgisi isteyecektir.
New password:
Re-type new password:
Adding password for user test
Artık kullanıcı adımız ve şifremiz oluşturulmuştur. Şimdi Nginx config dosyamızdan hangi klasörü koruma altına alacağımızı belirtmemiz gerekmektedir.
nano /etc/nginx/conf.d/example.com.conf
auth_basic "Administrator Login";
auth_basic_user_file /etc/nginx/example.com/.htpasswd;
Ana dizin haricinde özel bir klasörü koruma altına almak istiyorsanız aşağıdaki kodu kullanmanız gerekmektedir.
location /klasor {
auth_basic "Administrator Login";
auth_basic_user_file /etc/nginx/example.com/.htpasswd;
}