Cách thiết lập xác thực HTTP với Nginx trên Ubuntu 12.10
Màu đỏ có nghĩa là gì
Các dòng mà user cần nhập hoặc tùy chỉnh sẽ có màu đỏ trong hướng dẫn này! Phần còn lại chủ yếu phải là copy-and-paste.
Về Nginx
Nginx (phát âm là 'engine x') là một server Reverse Proxy và HTTP, cũng như một server proxy thư, được viết bởi Igor Sysoev, là chương trình linh hoạt và nhẹ khi so sánh với apache. Tài liệu chính thức của nginx ở đây .
Yêu cầu
Như một yêu cầu , ta giả định bạn đã xem qua bài viết về cách cài đặt VPS của bạn và cũng đã cài đặt Nginx trên đó. Nếu không, bạn có thể tìm thấy bài viết về cài đặt VPS trong bài viết cài đặt server ban đầu và bạn có thể tìm thêm thông tin về cài đặt nginx trong cộng đồng của ta .
Bước 1: Apache Utils
Ta cần htpasswd để tạo và tạo mã hóa cho user bằng Xác thực cơ bản. Cài đặt apache2-utils bằng lệnh bên dưới.
sudo apt-get install apache2-utils
Bước 2: Tạo user và password
Tạo một file .htpasswd trong folder trang web đang được cung cấp bởi nginx. Lệnh sau sẽ tạo file và cũng thêm user và password được mã hóa vào file .
sudo htpasswd -c /etc/nginx/.htpasswd exampleuser
Công cụ sẽ nhắc bạn nhập password .
New password:
Re-type new password:
Adding password for user exampleuser
Cấu trúc của file htpasswd sẽ như thế này:
login:password
Lưu ý account user đang chạy Nginx này phải truy cập được htpasswd này.
Bước 3: Cập nhật cấu hình Nginx
Tệp cấu hình nginx của bạn cho trang web phải nằm trong / etc / nginx / sites-available /. Thêm hai mục bên dưới cho đường dẫn domain mà bạn muốn bảo mật.
auth_basic "Restricted";
auth_basic_user_file /etc/nginx/.htpasswd;
Dòng thứ hai là vị trí của file htpasswd cho trang web .
Ví dụ: giả sử file cấu hình nginx của ta là /etc/nginx/sites-available/website_nginx.conf, hãy mở file bằng vi hoặc bất kỳ editor nào bạn chọn.
sudo vi /etc/nginx/sites-available/website_nginx.conf
Sau đó, thêm hai dòng vào đường dẫn sau:
server { listen portnumber; server_name ip_address; location / { root /var/www/mywebsite.com; index index.html index.htm; auth_basic "Restricted"; #For Basic Auth auth_basic_user_file /etc/nginx/.htpasswd; #For Basic Auth } }
Bước 4: Reload Nginx
Để phản ánh những thay đổi trên trang web của ta , hãy reload cấu hình nginx và cố gắng truy cập vào domain đã được bảo mật bằng Xác thực Cơ bản.
$ sudo /etc/init.d/nginx reload * Reloading nginx configuration...
Bây giờ, hãy thử truy cập trang web hoặc đường dẫn domain mà bạn đã bảo mật và bạn sẽ nhận thấy dấu nhắc của trình duyệt yêu cầu bạn nhập thông tin đăng nhập và password . Nhập các chi tiết mà bạn đã sử dụng khi tạo file .htpasswd. Dấu nhắc không cho phép bạn truy cập trang web cho đến khi bạn nhập đúng thông tin đăng nhập.
Và Voila! Bạn đã bảo mật đường dẫn domain trang web của bạn bằng Xác thực Cơ bản của Nginx.
Các tin liên quan
Cách cài đặt (LEMP) nginx, MySQL, PHP stack trên Arch Linux2012-11-02
Cách thiết lập cân bằng tải Nginx
2012-08-27
Cách cấu hình Nginx làm Reverse Proxy cho Apache
2012-07-20
Cách cài đặt WordPress với nginx trên CentOS 6
2012-07-02
Cách cài đặt WordPress với nginx trên CentOS 6
2012-07-02
Cách tạo chứng chỉ SSL trên nginx cho CentOS 6
2012-06-08
Cách thiết lập server ảo nginx (server block) trên CentOS 6
2012-06-07
Cách cài đặt Rails và nginx với Passenger trên Ubuntu
2012-06-01
Cách cài đặt nginx trên CentOS 6 với yum
2012-05-22