Get in touch
or send us a question?
CONTACT

Htaccess là gì?

Hầu hết những ai làm web hay SEO đều biết đến cái tên htaccess. Tuy nhiên, với những người khi mới bước vào việc lập trình thì lại chưa hiểu rõ cũng như chưa biết cách tạo file .htaccess toàn tập nhanh chóng và thuận tiện nhất. Chính vì vậy, hôm nay tôi sẽ chia sẻ với các bạn về htaccess là gì và cách cấu hình htaccess dễ dàng nhất.

Htaccess là gì và nằm ở đâu?

Htaccess là một tập tin dùng để cấu hình máy chủ web apache. Nó được máy chủ chấp nhận như là một thành phần và cho phép chúng ta thực hiện điều hướng và bật các tính năng một cách linh hoạt hoặc bảo vệ một phần nào đó của website. Trong cái tên .htaccess thì htaccess là phần đuôi và tập tin này là không có tên (noname), chính vì thế khi bạn đưa file này lên host không phải lúc nào nó cũng hiển thị ra.

Để thao tác với file .htaccess ta có thể sử dụng bất kì một editor nào hỗ trợ code text như Netbeans, PHP Designer, hay thậm chí là phần mềm notepad có sẵn trong window. File .Htaccess không được viết nên từ một ngôn ngữ lập trình nào, nó được viết bởi những quy tắc Regular Expression nên nếu bạn không nắm vững kiến thức này thì thao tác với file .htaccess rất khó khăn. Và nếu bạn chỉnh sửa file với một lỗi dù chỉ là nhỏ thì khi truy cập vào website của bạn sẽ xuất hiện lỗi 500, như vậy là bạn đã HACK được web mình rồi đấy. Vì thế hãy thận trọng khi chỉnh sửa file .htaccess và hãy luôn luôn có một file backup trước khi đụng đến.

Thông thường thì file này thường nằm ngay ở trong thư mục gốc của hosting. Bạn có thể dễ dàng thấy ở trong thư mục gốc của hosting của bạn có chứa file này.

Bạn cần lưu ý gì khi sử dụng .htaccess?

  • Phải đảm bảo file .htaccess được bảo mật một cách nhất định, để tránh nhưng kẻ xấu lợi dụng nó.
  • Cần lưu lại một file .htaccess trước khi tiến hành chỉnh sửa. Nếu có trục trặc xảy ra vẫn có thể khôi phục lại.
  • Nếu như người dùng không nắm rõ hoặc có sơ suất trong quá trình cấu hình đều có thể khiến website của bạn có thể không hoạt động hoặc không như ý muốn của người dùng như trước.

Hướng dẫn cấu hình .htaccess căn bản dễ dàng

Thay đổi trang báo lỗi với .htaccess

Đặt vào file .htaccess nội dung như sau:

— ErrorDocument mã số lỗi /trangloi.html. Trong đó mã số lỗi là mã số của các lỗi phát sinh, sau đây là những lỗi hay gặp:

401 – Authorization Required (cần password để truy nhập)
400 – Bad request (Lỗi do yêu cầu)
403 – Forbidden (không được vào)
500 – Internal Server Error (lỗi server)
404 – Wrong page (lỗi trang, không tìm thấy…)

Có thể dùng một hình ảnh để cảnh báo bằng cách chèn đoạn mã sau vào file .htaccess.

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www.)?tailieulinux.com/.*$ [NC]
RewriteRule .(gif|jpg)$ http://www.trangweb.com/diehotlinker.jpg [R,L]

Chống ăn cắp băng thông, đặt vào file .htaccess nội dung như sau

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www.)?yourwebsite.com/.*$ [NC]
RewriteRule .(gif|jpg)$ – [F]

Ngăn việc hiện các tập tin trong thư mục, đặt vào file .htaccess nội dung như sau.

Options –Indexes.

Tự động load trang index

DirectoryIndex index.php index .php3 messagebrd.pl index.html index.htm.
File nào có theo thứ tự gần nhất sẽ được ưu tiên xuất hiện.

Cấm IP truy cập

deny from 203.262.110.20; cho phép IP truy nhập: allow from 203.262.110.20.

Tự động redirect

Redirect/olddirectory http://www.trangwebmoi.com/thumucmoi ;

Tùy biến đuôi tập tin

RewriteEngine on
RewriteRule (.*).dll$ $1.html

Trong đó html là phần mở rộng thực sự của những tập tin, dll là phần mở rộng do chúng ta tự chọn.

Tự động chèn www vào address bar

Chèn đoạn code sau vào .htaccess để website tự động chèn www vào address bar

RewriteEngine on
RewriteCond %{HTTP_HOST} !^www.yourdomain.com$
RewriteRule ^(.*)$ http://www.yourdomain.com/$1 [R=301]

Hoặc.

RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]

Tự động xóa www khỏi address bar

Chèn đoạn code sau vào .htaccess để website tự động bỏ www.

RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]

Bắt buộc dùng https

Để ép buộc client phải truy cập vào website bằng https, có thể dùng .htaccess để cập nhật như sau

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://yourdomain.com/$1 [R=301,L]