Gói yêu cầu
-
Trên Debian:
apache2-utils
.sudo apt-get install apache2-utils
-
Trên Fedora:
httpd-tools
.sudo dnf install httpd-tools
Tạo file lưu trữ user:password
Tạo file /etc/nginx/.htpasswd
là file chứa thông tin về người dùng và mật khẩu.
sudo htpasswd -c /etc/nginx/.htpasswd user1
Tùy chọn -c
chỉ nên dùng nếu file chưa tồn tại nếu không nó sẽ ghi đè file đã có.
Để thêm người dùng khác, ta chạy lệnh giống như trên nhưng bỏ tùy chọn -c
.
sudo htpasswd /etc/nginx/.htpasswd user2
Cấu hình NGINX
Yêu cầu đăng nhập cho một location cụ thể
location /test {
auth_basic "Test Authentication";
auth_basic_user_file /etc/nginx/.htpasswd;
...
}
Yêu cầu đăng nhập cho cả website trừ một location cụ thể
server {
...
auth_basic "Test Authentication";
auth_basic_user_file /etc/nginx/.htpasswd;
...
location /test {
auth_basic off;
}
}
Khởi động lại NGINX
sudo service nginx restart
Sau khi cấu hình xong, khi truy cập vào trang ta sẽ thấy hộp thoại đăng nhập hiện lên.