File .htaccess là gì ? Các đoạn code tối ưu .htaccess cho WordPress

Last updated on Tháng Hai 4th, 2020 at 01:20 chiều

File .htaccess là một file cấu hình quan trọng trong website wordpress, nó có thể chuyển hướng URL, chỉnh sửa URL, tối ưu hóa tốc độ load của website chỉ trong vài đoạn code.

File .htaccess là gì ?

File .htaccess (HyperText Access) là một file cấu hình trên Apache Web Server thường thấy nhất ở các website WordPress, nó được sử dụng để thiết lập các hình thức truy cập vào website (chuyển hướng – rút ​​ngắn URL, lọc Ip truy cập, chặn Image Hot Link Prevention, …), thiết lập các tập tin được phép truy cập như thế nào trong một thư mục và tối ưu hóa website.

Trong WordPress, .htaccess thường được sử dụng nhiều nhất để setup lại URL, giúp URL thân thiện hơn với các Search Engine.

‘Dấu chấm’ (.) trước tên file làm cho nó trở thành một file ẩn để tránh truy cập từ những hacker và user không có kiến thức về .htaccess. Nếu đang truy cập vào server qua FTP Client đôi khi bạn sẽ không thấy nó.

Các đoạn code tối ưu .htaccess cho WordPress

Tips: Thêm càng nhiều đoạn code sẽ làm file .htaccess của bạn rất là rối. Nên nhớ sửa lại chú thích ở dấu # để đồng nghiệp hay là chính bạn của sau này nhìn vào còn biết nó là cái gì nhé !

1/ Tạo file .htaccess mặc định

Vì một lí do nào đó mà website WordPress của bạn không có file .htaccess này hoặc phải tạo lại file .htaccess thì copy đoạn code này vào để website hoạt động trơn tru nha.

2/ Chặn Image Hot Link Prevention

Image hotlinking là một thuật ngữ ám chỉ một ai đó lấy hình ảnh bằng việc copy luôn đường dẫn URL hình ảnh từ website của các bạn.

Nếu các bạn cảm thấy ngứa con mắt khi ai đó làm việc này, thì chỉ việc thay thế địa chỉ website mà họ sử dụng hình ảnh của các bạn vào. (thay tên website của họ vào yourwebsite)

3/ Vô hiệu hóa directory browsing

Bạn có muốn người khác xem được các file trong thư mục website của mình trên trình duyệt của họ không ? Ví dụ như: Uploads – Plugin – Themes – … 

Nếu không thì thêm cái này vào file .htaccess:

4/ Ngăn chặn các file *.php truy cập trái phép vào Folder wp-includes

Dòng Options All – Indexes để vô hiệu Directory Browsing ở mục 3 đấy !

5/ Ngăn chặn các file *.php truy cập trái phép vào Folder wp-content/uploads

Trong folder Uploads chỉ chứa các file hình ảnh và video, tài liệu thôi. Nếu không may thấy 1 file đuôi php bất kỳ nào ở trong đây thì bạn nên xem có phải là Malware không nhé !

Bạn tạo 1 file .htaccess tại vị trí wp-content/uploads và đưa đoạn code dưới đây vào:

6/ Bảo vệ file wp-config.php

Đây là anh bạn mỏng manh yếu đuối nhưng chứa toàn dữ liệu ‘nhạy cảm’ nên phải bảo vệ anh này thật kỹ, tránh sự truy cập trái phép từ các Hacker.

Lưu ý: Khi thêm đoạn này vào thì file wp-config.php sẽ không thể tự động chèn các đoạn code nào nữa, vì vậy nếu các plugin như: Wordfence hoặc các plugin Cache sẽ không hoạt động được. Bạn sẽ phải chèn code vào file này thủ công nhé.

7/ Vô hiệu hóa XML-RPC

XML-RPC là file cho phép điều khiển website wordpress từ xa thông qua các thiết bị di động. Nếu không sử dụng thì bạn hãy vô hiệu hóa nó đi.

8/ Chặn dò username tác giả

Một trong những kỹ thuật tấn công Brute Force Attack, đó là chạy quét tác giả trên site WordPress

9/ Chặn truy cập đến từ các trang web khác

Chặn hết các truy cập có xuất phát từ một số trang nhất định. Ví dụ trên trang xyz.com có back link bẩn đến trang của mình và mình muốn chặn truy cập đó, khi khách nhấn vào link trên trang này và sang trang của mình thì sẽ báo lỗi 403.

Nhớ sửa tên website bạn cần chặn lại nhé !

10/ Bảo vệ .htaccess

Bảo vệ các file khác rồi thì cũng phải tự mình bảo vệ mình chứ nhỉ ?

11/ Kích hoạt Cache cho trình duyệt

Để tăng tốc độ load website trên các trình duyệt thì Website sẽ lưu lại các dữ liệu đã tải ở lần truy cập đầu tiên (hình ảnh, CSS, Js, …) ở dạng Cache, và lần sau truy cập vào thì trình duyệt chỉ việc load lại sẵn các dữ liệu đã lưu lại này. Không phải lấy từ sever nữa !

12/ Tăng kích thước tải tệp (PHP Value)

Bạn không thể upload file ảnh nặng trên 1MB ?

Website wordpress của bạn xuất hiện lỗi Max Excution hoặc Max Input Time ?

Chèn cái này vào:

13/ Bật tính năng nén Gzip

Đoạn code trên sẽ nén tất cả các file CSS, Js, HTML thành dạng Gzip và gởi cho trình duyệt của User truy cập.

Ngoài ra thì bạn nên khai báo thêm đoạn mod_deflate này nữa nhé! để đảm bảo rằng tất cả các trình duyệt đều nhận biết được !

14/ Redirect 301

Nếu bạn có nhiều link cũ cần chuyển hướng sang link mới mà lại ngại cài thêm Plugin Redirect ?

Đây là giải pháp:

Lưu ý:

  • /oldurl1/ => Link cũ (ví dụ: /link-nay-bi-hong-roi.html)
  • http://yoursite.com/newurl1 => link mới (nếu site của bạn có https thì thay http = https nhé)

15/ Chuyển hướng HTTP thành HTTPS

Khi đã cài SSL cho website rồi thì việc cuối cùng cần làm là thêm đoạn này vào .htaccess nhé

Đây là đoạn code sẽ bắt buộc mọi traffic đều phải thông qua giao thức HTTPS. (kể cả link hình ảnh, js, …)

16/ Cấu hình HTTP Security Headers

HTTP Security Headers hiểu đơn giản là các chỉ thị được thêm vào HTTP Response Header để giúp tăng cường khả năng bảo mật cho website.

WordPress cũng hỗ trợ plugin cho các bạn tại đây: Security Headers. Nếu cài plugin thì không cần làm theo hướng dẫn bên dưới nữa nha.

HTTP Security Headers bao gồm các phần: 

  • Referrer-Policy.
  • HSTS.
  • X-Frame-Options.
  • X-Xss-Protection.
  • X-Content-Type-Options.

Để kiểm tra website của bạn đã có đầy đủ các mục trên chưa thì vào đây: https://securityheaders.com/

Nếu đỏ lòm như thế này nghĩa là bạn cần phải setup HTTP Security Header cho website nhé !

Ok cùng Hướng dẫn wordpress cơ bản đi setup cho HSTS trước!

HSTS

HSTS – viết tắt của HTTP Strict Transport Security – là một tính năng bảo mật cho phép website thông báo cho các trình duyệt chỉ nên giao tiếp bằng giao thức HTTPS an toàn thay vì HTTP.

HSTS đảm bảo rằng tất cả kết nối sau đó tới một website được mã hóa bằng giao thức HTTPS và ngăn chặn hacker sử dụng chứng chỉ số không hợp lệ.

Khi đã cài đặt SSL thành công thì bạn paste đoạn này vào .htaccess thêm nhé !

Để biết được website wordpress của bạn đã cài đặt HSTS chưa thì vào đây để kiểm tra: https://dev.ssllabs.com/ssltest/

Kiểm tra HTST cho wordpress
Nếu bạn nhận được thông báo như hình thì có nghĩa là HSTS đã được thiết lập thành công.
Referrer – Policy

Referrer – Policy cho phép một trang web kiểm soát lượng thông tin mà trình duyệt web bao gồm với các điều hướng ra ngoài trang web đó.

Để cài đặt Referrer – Policy ta chỉ cần thêm đoạn này vào file Function.php (không phải .htaccess nha)

Xóa cache (nếu có sử dụng plugin cache) và kiểm tra kết quả.

X – Content-Type – Options

X-Content-Type-Options ngăn chặn trình duyệt web cố gắng xác định loại nội dung (css, js, image…) và buộc nó phải tuân theo kiểu nội dung đã được khai báo.

Thêm đoạn này vào .htaccess:

X – Frame – Options

X – Frame – Options cho trình duyệt web biết bạn có muốn cho phép trang web của mình được đóng khung hay không. Bằng cách ngăn chặn trình duyệt web đóng khung trang web, bạn có thể bảo vệ nó chống lại các cuộc tấn công như Clickjacking.

Nếu không muốn thì thêm đoạn này vào .htaccess:

X – XSS – Protection

X – XSS – Protection đặt cấu hình cho các bộ lọc tập lệnh cross-site được tích hợp vào hầu hết các trình duyệt web.

Nó được dùng để ngăn chặn các cuộc tấn công XSS.

Thêm đoạn này vào .htaccess:

Đến đây là hết phần tổng hợp các đoạn code tối ưu .htaccess cho WordPress rồi. Cuồng Team đã áp dụng và cảm thấy hiệu suất của website được cải thiện rõ rệt ! Còn bạn thì sao ? Comment phía dưới để mọi người cùng biết nhé !

Xem thêm: Lấy Lại Mật Khẩu WordPress Một Cách Đơn Giản

(Visited 272 times, 1 visits today)
0 0 vote
Article Rating
Subscribe
Notify of
guest
2 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
Khang
Khang
16 Tháng Ba, 2020 2:48 chiều

Bài viết hay nhưng lại bị chặn copy/paste =.=!
nhấn vào icon copy ngay góc hộp thoại cũng không copy đc

2
0
Would love your thoughts, please comment.x
()
x