Nội dung
- shares
- Facebook Messenger
- Gmail
- Viber
- Skype
Bạn đã hoàn thiện phần thiết kế trang web WordPress và bạn muốn trình bầy đến khách hàng của bạn để xem nó, nhưng bạn lại không muốn những người khác thấy nó (chẳng hạn như chặn công cụ tìm kiếm lập chỉ mục trang web) , cho đến khi khách hàng của bạn đồng ý xuất bản chính thức.
HTTP Authentication thêm một lớp bảo mật thứ hai để bảo vệ khỏi các cuộc tấn công vào trang quản trị WordPress (wp-admin) – bằng cách yêu cầu người dùng phải xác minh thông tin 1 lần nữa. Sau khi bảo vệ thư mục WordPress wp-admin với file .htaccess , bạn sẽ cần thêm 1 tài khoản đăng nhập thứ 2 thông qua xác thực HTTP với tệp .htpasswd.
Tạo tập tin .htpasswd
Đầu tiên, chúng ta cần tạo 1 file có tên .htpasswd. Tập tin này sẽ lưu tên truy cập và mật khẩu được yêu cầu để truy cập vào trang web, và bạn nên lưu file ở bên ngoài thư mục public_html web. Vì nếu bạn để tập tin htpasswd ở cùng thư mục này thì tất cả mọi người sẽ có thể tải nó.
Bây giờ, chúng ta cần thêm một tên người dùng và mật khẩu được mã hóa vào tập tin .htpasswd. Để tạo chuỗi này bạn có thể truy cập vào tool miễn phí tại địa chỉ htaccesstools.com . Nhập tên người dùng và mật khẩu của bạn, và nhấn nút Generate sau đó copy chuỗi mã hóa & dán vào tập tin .htpasswd mới của bạn.
VD mình điền tên người dùng Bumble và mật khẩu beehive, và đây là chuỗi mã hóa trả về:
bumble:$apr1$.0usU.LQ$w0l8VAsgvdMGnNAAjQiVn0
Lưu tập tin và tải nó lên thư mục web, mình sẽ upload vào thư mục $HOME/ trên hosting WordPress.
Tìm đường dẫn tập tin .htpasswd
Bây giờ, chúng ta cần biết đường dẫn tuyệt đối đến tập tin htpasswd , bởi vì bạn sẽ phải nhập trong file .htaccess. Cách đơn giản nhất để làm điều này là sử dụng hàm phpinfo()
.
Tạo một tập tin tên info.php và chèn hàm phpinfo(); vào file. Tiếp đó Upload file này vào thư mục gốc của trang web (trong cùng thư mục chứa tập tin wp-config.php) và chạy file info.php trong trình duyệt của bạn.
Trang web sẽ hiển thị toàn bộ thông tin cài đặt PHP, kéo xuống gần cuối , có một bảng màu tím ghi “PHP Variables” . Trong bảng này bạn tìm đến mục $_SERVER[“DOCUMENT_ROOT”]. Nó trông như sau:
/var/sites/mydomain.com/public_html
Đó là đường dẫn tới thư mục gốc chứa các tệp tin cài đặt WordPress của website, như vậy chúng ta có thể đặt file .htpasswd trong thư mục:
/var/sites/mydomain.com/
Lưu ý: ngay sau khi bạn đã tìm được đường dẫn, hãy xóa tập tin info.php trên host vì nó có thể để lộ thông tin cho hacker tấn công vào hệ thống của bạn và đó là một nguy cơ bảo mật xấu.
Chỉnh sửa tập tin .htaccess
Tập tin .htaccess trong thư mục gốc của trang web WordPress mặc định sẽ trông giống như thế này:
# BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress
Chúng ta thêm vào các dòng sau đây vào cuối của tập tin, sau dòng # END WordPress:
AuthType Basic AuthName "Restricted Area" AuthUserFile /var/sites/mydomain.com/.htpasswd require valid-user
Văn bản bên trong dấu ngoặc kép là thông điệp mà bạn sẽ được thấy trên popup yêu cầu người dùng nhập lớp mật khẩu thứ 2.
AuthUserFile
là đường dẫn đến tập tin .htpasswd mà bạn xác định trước đó.
Sau Khi đã cập nhật lại tập tin .htaccess, hãy thử truy cập vào trang đăng nhập web wordpress của bạn trên trình duyệt. Bạn sẽ thấy rằng một cửa sổ bật ra thông báo yêu cầu nhập tên người dùng và mật khẩu.
Xác thực HTTP là dễ thực hiện nhất nhưng hãy nhớ rằng mật khẩu được mã hóa dạng Base 64. Nếu bạn muốn có một giải pháp an toàn hơn bạn nên sử dụng chứng thực qua giao thức HTTPS.
LƯU Ý: Để gỡ bỏ mật khẩu bảo vệ, bạn xóa các dòng đã thêm vào .htaccess, và sau đó xóa tập tin .htpasswd.
Cho phép chức năng Ajax trên frontend
Một số plugin wordpress sử dụng chức năng Ajax trong WordPress. Điều này có nghĩa rằng các plugin đó có thể cần truy cập vào tập tin admin-ajax.php
mà có thể được tìm thấy trong thư mục wp-admin. Để cho phép truy cập nặc danh đến tập tin này để các plugin WordPress hoạt động chính xác, thêm mã dưới đây vào file .htaccess mà bạn vừa tạo ra trong hướng dẫn này.
<Files admin-ajax.php> Order allow,deny Allow from all Satisfy any </Files>
Chúc bạn thành công.
Hãy cho mình biết suy nghĩ của bạn trong phần bình luận bên dưới bài viết này. Hãy theo dõi kênh chia sẻ kiến thức WordPress của Hoangweb trên Twitter và Facebook
- shares
- Facebook Messenger
- Gmail
- Viber
- Skype