Tập tin htaccess cho website chống ăn cắp băng thông và tài nguyên

21st Feb 2021
Table of contents

Vậy htaccess là gì?

Htaccess (viết tắt của hypertext  access) là một tập tin siêu văn bản dùng để cấu hình cho máy chủ web chạy Apache. Nó cho phép chúng ta thực hiện bật, tắt các tính năng trên web, quản lý truy cập hay bảo vệ website… Tập tin này hoàn toàn không có tên, htaccess là đuôi của file này nhé. Do htaccess có thể tác động, điều chỉnh cấu hình tới lõi server một cách trực tiếp nên nó có vai trò vô cùng quan trọng đối với toàn bộ website của bạn. File htaccess nằm trong cây thư mục của web và có ảnh hưởng đến thư mục và cả những thư mục con nằm trong đó.

File htaccess thường được chứa trong thư mục gốc của hosting. Nếu không tìm thấy file này thì bạn có thể tự tạo một tệp tin có tên là .htaccess. Để chỉnh sửa file htaccess, bạn chỉ cần dùng các phần mềm edit code như Netbeans hay Notepad…

Những điều cần nhớ trước khi sử dụng file htaccess

- Để có thể điều chỉnh được tệp tin này thì trước tiên bạn cần tìm đến file httpd.conf và tìm dòng:

#LoadModule rewrite_module modules/mod_rewrite.so

Sau đó xóa dấu # ở đầu dòng trên đi để mở tính năng ghi đè của file htaccess.

- Để thao tác được với tệp htaccess bạn cần phải nắm rõ quy tắc Regular Expression, bởi nó được viết theo quy tắc khó nhằn này. Nếu bạn có sơ suất trong việc điều chỉnh file này, nó có thể để lại những hậu quả nghiêm trọng cho website của bạn. Vì thế hãy thật cẩn thận bạn nhé!

- Để an toàn thì trước khi tiến hành thao tác với file htaccess bạn nên copy và lưu lại nó. Đề phòng trường hợp có lỗi xảy ra ta vẫn có thể khôi phục được.

- Tệp tin này quan trọng như thế nên bạn cần bảo mật nó cẩn thận, đảm bảo nó bất khả xâm phạm với bất kỳ kẻ xấu nào.

1. Chống ăn cắp băng thông và tài nguyên

Nếu các website khác chôm chỉa hình ảnh, dữ liệu từ website của bạn và làm cho lượng băng thông tăng lên vượt quá lượng băng thông cho phép thì sẽ dẫn đến tốn thêm chi phí của bạn. Vì vậy, hãy ngăn chặn điều này bằng cách thêm đoạn code sau vào file htaccess:

RewriteEngine on

RewriteCond %{HTTP_REFERER} !^$

RewriteCond %{HTTP_REFERER} !^http://(www.)?bizflycloud.com/.*$ [NC]

RewriteRule .(gif|jpg)$ – [F]

Lưu ý! Đừng copy y hệt đoạn trên vào nhé, hãy nhớ thay bizflycloud.com thành tên trang web của bạn.

2. Dùng htaccess để cấm một số IP truy cập

Có một số người cố tình lên trang web của bạn để phá phách, ăn vạ, chẳng hạn như bình luận tiêu cực, sai sự thật làm ảnh hưởng xấu đến website của bạn. Tệp tin htaccess sẽ giúp bạn đánh bay mọi IP bẩn, ngăn chúng quay trở lại và làm hại trang web. Chỉ cần chèn câu thần chú đuổi tà sau vào file htaccess:

deny from 121.116.969.100

Như vậy là bạn đã cấm cửa địa chỉ IP: 121.116.969.100, nếu muốn cấm thêm các địa chỉ khác thì bạn thêm vào các dòng tương tự như vậy. Nếu bạn muốn chơi lớn, cấm cả một dải IP thì làm như sau:

deny from 121.11

Nếu bạn muốn cho phép một IP nào đó truy cập lại ( ví dụ IP: 121.116.969.100) thì làm như sau:

allow from 121.116.969.100

3. Tạo trang báo lỗi đẹp mắt với htaccess

Các trang báo lỗi mặc định thường khó hiểu và trông khá bình thường, vì vậy bạn có thể nhập đoạn code sau vào file htaccess để giúp chúng nhìn sang, xịn, mịn hơn:

ErrorDocument mã số lỗi /trangloi.html

Trong đó mã số lỗi là một số tự nhiên thường là các số như: 403 (cấm truy cập), 500 (lỗi server), 404 (lỗi không tìm thấy trang), 400 (lỗi do yêu cầu), 401 (lỗi do cần có password để truy cập)… trangloi.html là trang web sẽ được hiển thị khi có lỗi. Đây là trang bạn có thể tự trình bày, thêm hình ảnh hay chữ viết tùy theo ý bạn.

4. Bảo mật tệp tin wp-config.php của WordPress

Wp-config.php là một file rất quan trọng vì nó chứa nhiều thông tin mật như password, username… nên bạn cần phải bảo mật nó an toàn. Để làm được điều đó hãy nhập đoạn mã sau vào tệp htaccess:

order allow,deny

deny from all

5. Bật tính năng nén file Gzip bằng htaccess

Bạn có thể bật chức năng này giúp cho website tải nhanh chóng hơn và back up được dữ liệu. Hãy nhập đoạn code sau vào file htaccess:

AddOutputFilterByType DEFLATE text/html text/plain text/xml application/xml application/xhtml xml text/javascript text/css application/x-javascript

BrowserMatch ^Mozilla/4 gzip-only-text/html

BrowserMatch ^Mozilla/4.0[678] no-gzip

BrowserMatch bMSIE !no-gzip !gzip-only-text/html

6. Xóa phần đuôi .php của các tập tin

Khi bạn sử dụng ngôn ngữ lập trình web là php thì địa chỉ URL sẽ có phần đuôi mở rộng là .php. Bạn có thể xóa đuôi này cho URL gọn gàng sạch sẽ hơn bằng cách nhập đoạn thần chú sau vào file htaccess:

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-f

RewriteRule ^([^\.] )$ $1.php [NC,L]

7. Chuyển hướng tên miền từ có www sang không có www

Tệp tin htaccess còn giúp bạn chuyển hướng trang web khi người dùng nhập địa chỉ website. Ví dụ như khi ai đó gõ www.bizflycloud.com thì được chuyển đến địa chỉ bizflycloud.com, để làm được điều này bạn sử dụng đoạn code sau:

RewriteEngine on

RewriteCond %{HTTP_HOST} !^www.bizflycloud.com$

RewriteRule ^(.*)$ http://www.bizflycloud.com/$1 [R=301]

Nói đơn giản thì đây là cách để bỏ www ra khỏi địa chỉ trang web của bạn. Và để tự động chèn thêm www vào thanh địa chỉ thì bạn làm theo cách dưới đây.

8. Chuyển hướng tên miền từ không có www sang có www

Ngược lại với chức năng trên, bạn có thể chuyển hướng tên miền từ bizflycloud.com sang www.bizflycloud.com bằng đoạn mã sau trong tệp tin htaccess:

RewriteCond %{HTTP_HOST} ^bizflycloud.com$ [NC]

RewriteRule (.*) http://www.bizflycloud.com/$1 [R=301,L]
Bạn thấy bài viết này như thế nào?
2 reactions

Add new comment

Image CAPTCHA
Enter the characters shown in the image.
Câu nói tâm đắc: “Điều tuyệt với nhất trong cuộc sống là làm được những việc mà người khác tin là không thể!”

Related Articles

Xử lý các phát sinh trên không hề đơn giản. Không chỉ xử lý một lần mà còn phải test để đảm bảo hệ thống chạy đúng khi đã xử lý xong. Khi gặp phải yêu cầu này trong dự án, bạn nên list đầy đủ các vấn đề cũng như cách thức tiến hành để hạn chế ảnh hưởng đến vận hành của hệ thống hiện tại.

301 Redirect (Moved permanently) là một mã trạng thái HTTP ( response code HTTP) để thông báo rằng các trang web hoặc URL

Redirect 302 (MovedTemporarily) hay còn gọi là redirection 302, chuyển hướng tạm thời, gần giống với Redirection 301, di chuyển vĩnh viễn.

Ở các quốc gia trên Thế Giới hiện tại, để xây dựng một website áp dụng kiến trúc JAMstack Doanh Nghiêp phải bỏ ra ít nhất ~3.000$ hoặc hơn.