.htaccess là gì

Article ID: 533
Cập nhật gần nhất: 15 Th06, 2020

.htaccess là gì

.htaccess là một file cấu hình sử dụng trên máy chủ cài đặt Apache Web Server . Khi tệp .htaccess được tạo ra và khai báo đường dẫn thư mục chính xác thì Apache Web Server mới có thể đọc và thực thi được file này. Các tệp .htaccess này có thể được sử dụng để thay đổi cấu hình của Apache Web Server để bật / tắt các chức năng và tính năng bổ sung mà Apache Web Server phải cung cấp. Các phương tiện này bao gồm chức năng chuyển hướng cơ bản, ví dụ: nếu không tìm thấy tệp 404 hoặc cho các chức năng nâng cao hơn như bảo vệ mật khẩu nội dung hoặc ngăn chặn các hot link.

.htaccess được sử dụng như thế nào?

Một số cách sử dụng phổ biến cho .htaccess bao gồm chuyển hướng URL, cho phép bảo vệ mật khẩu cho các trang web (hoặc trang web); hiển thị các trang lỗi tùy chỉnh (như trang 404); và thúc đẩy SEO thông qua một điều kiện nhất định .

Tại sao nó được gọi là .htaccess?

.htaccess là viết tắt của hypertext access - truy cập siêu văn bản. Tên này bắt nguồn từ mục đích sử dụng ban đầu của công cụ nhằm kiểm soát quyền truy cập của người dùng vào các tệp nhất định trên mỗi thư mục.

Sử dụng một tập hợp các lệnh điều khiên giống trên file http.conf của Apache, .htaccess cho phép quản trị viên hạn chế quyền truy cập vào các thư mục riêng lẻ đối với người dùng có tên và mật khẩu được chỉ định trong file .htpasswd đi kèm .

Không những vậy .htaccess được sử dụng cho nhiều chức năng khác như: chuyển hướng http sang https, thông báo lỗi, chặn truy cập từ người dùng hoặc IP nào đó tới trang web....

Các file .htaccess nằm ở đâu ?

Về lý thuyết, mọi thư mục trên máy chủ của bạn đều có thể có một file .htaccess. Tuy nhiên, nó  thường nằm trong thư mục gốc web của bạn - đó là thư mục chứa tất cả nội dung của trang web và được gắn nhãn giống như public_html hoặc www.

Nếu bạn có một thư mục chứa nhiều thư mục con trang web, thường sẽ có một file  .htaccess trong thư mục gốc ( public_html) và cũng có một thư mục trong mỗi thư mục con ( /sitename).

Tại sao tôi không thể tìm thấy .htaccess của mình?

Trên hầu hết các hệ thống tệp, tên tệp bắt đầu bằng dấu chấm ( .) là các tệp bị ẩn. Điều này có nghĩa là chúng thường không hiển thị theo mặc định. Nhưng tất cả các ứng dụng để up/download và chỉnh sửa dữ liệu đều có chức năng cho hiển thị các file ẩn dạng này .

.htaccess của một số CMS 

  • WHMCS 
RewriteEngine On

# Announcements
RewriteRule ^announcements/([0-9]+)/[a-z0-9_-]+.html$ ./announcements.php?id=$1 [L,NC] 
RewriteRule ^announcements$ ./announcements.php [L,NC]

# Downloads
RewriteRule ^downloads/([0-9]+)/([^/]*)$ ./downloads.php?action=displaycat&catid=$1 [L,NC]
RewriteRule ^downloads$ ./downloads.php [L,NC]

# Knowledgebase
RewriteRule ^knowledgebase/([0-9]+)/[a-z0-9_-]+.html$ ./knowledgebase.php?action=displayarticle&id=$1 [L,NC]
RewriteRule ^knowledgebase/([0-9]+)/([^/]*)$ ./knowledgebase.php?action=displaycat&catid=$1 [L,NC]
RewriteRule ^knowledgebase$ ./knowledgebase.php [L,NC]
  • Wordpress
    # BEGIN WordPress
    
    RewriteEngine On
    RewriteBase /
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    
    # END WordPress
    

  • Base Kit
# Proxy rules for BaseKit site: ".com"

DirectoryIndex index.php index.html index.htm default.htm default.html

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^(.+)$ http:///$1 [P,L]

# END proxy rules for ".com"

Và rất nhiều file .htaccess của các CMS nữa như Drupal, Joomla, Magneto khá "cồng kềnh" nên không tiện nêu lên ở bài viết này.

Tại sao lại sử dụng .htaccess thay vì các chức năng mặc định ?

Bạn hoàn toàn có thể chuyển hướng bằng các file cấu hình PHP, hoặc tạo kịch bản chuyển hướng tùy thuộc vào mã nguồn và server bạn đang sử dụng. Hoặc đơn giản là chuyển hướng bằng các tiện ích trên CMS các bạn đang sử dụng (Wordpress, OpenCart,....) Nhưng sử dụng .htaccess thường là loại chuyển hướng nhanh nhất.

Với chuyển hướng từ .htaccess , máy chủ trả lời trực tiếp yêu cầu bằng thông báo chuyển hướng. Điều này nhanh hơn nhiều so với các kiểu chuyển hướng còn lại.

Tuy nhiên, bạn cần lưu ý - một số hệ thống quản lý nội dung CMS thực sự quản lý chuyển hướng bằng cách cập nhật lên file .htaccess . WordPress là một ví dụ cho việc đó. Điều này mang lại cho bạn hiệu quả khi sử dụng .htaccess , đồng thời mang lại cho bạn sự thuận tiện trong việc quản lý từ bên trong ứng dụng của bạn.

Trên đây là những kiến thức cơ bản về việc sử dụng file .htaccess. Hi vọng bài viết này sẽ giúp ích cho các bạn trong việc sử dụng dịch vụ của HOSTVN

Đánh giá bài hướng dẫn:  
Báo cáo một vấn đề
Article ID: 533
Cập nhật gần nhất: 15 Th06, 2020
Lần sửa đổi: 2
Lượt xem: 0