SemrushEnterpriseby LionTech · Vietnam PartnerĐăng ký demo ↗
SEO tổng quan

Hướng dẫn đầy đủ về file .htaccess: Nó là gì & Cách sử dụng

Tìm hiểu cách sử dụng file .htaccess để cải thiện trang web của bạn và nhận biết những rủi ro khi chỉnh sửa nó.

File .htaccess là gì?

File .htaccess là một file trên website dùng để cấu hình một số khía cạnh của trang web bạn. Ví dụ như chuyển hướng, trang lỗi tùy chỉnh, và nhiều hơn nữa. Tất cả đều không cần chỉnh sửa các file cấu hình chính của server.

Nó được sử dụng trên các server chạy Apache, phần mềm web server mã nguồn mở. Nếu website bạn chạy trên Nginx thì sẽ không có file .htaccess.

Dưới đây là ví dụ về một file .htaccess dành cho website WordPress:

.htaccess của một website WordPress hiển thị các dòng mã bao gồm các quy tắc rewrite và điều kiện.

File .htaccess nằm ở đâu?

File .htaccess thường nằm ở thư mục gốc của website bạn, dù bạn đang dùng một hệ thống quản lý nội dung như WordPress hoặc bạn tự tạo trang web từ đầu.

Một cách để truy cập thư mục gốc của trang web là qua nhà cung cấp hosting của bạn, thường là qua giao diện quản lý file. Đây là một thư mục trong hosting cho phép bạn truy cập và chỉnh sửa các file của trang web — ví dụ như file .htaccess.

Các file trên server của nhà cung cấp hosting có thể trông giống như các thư mục trên máy tính của bạn:

Trình quản lý file tài khoản hosting website.

Nhưng vị trí chính xác của file .htaccess phụ thuộc vào mục đích sử dụng của nó.

Ví dụ, giả sử bạn có một file .htaccess trong thư mục “image” của website. Các chỉ thị trong file .htaccess đó sẽ chỉ ảnh hưởng đến các file trong thư mục đó..

Nhưng nếu file .htaccess nằm trong thư mục gốc của website — thư mục chứa các file chính của trang web — thì các chỉ thị trong file sẽ áp dụng cho tất cả các file (và trang) trên site của bạn.

Trình quản lý file host website hiển thị file .htaccess nằm trong thư mục public_html, hay thư mục gốc.
Lưu ý

File .htaccess của bạn có thể bị ẩn theo mặc định. Nếu bạn không thấy, hãy tìm cài đặt trong trình quản lý file để hiển thị file ẩn. Nếu vẫn không thấy, bạn có thể cần tự tạo file .htaccess.

Cách chỉnh sửa file .htaccess

Nếu bạn dùng WordPress, file .htaccess thường đã được tạo khi bạn cài đặt WordPress (chúng tôi sẽ hướng dẫn nếu trường hợp này không xảy ra ở phần sau).

Có ba cách chính để chỉnh sửa file này:

Lưu ý

Hãy sao lưu website trước khi thay đổi bất kỳ file nào. Bạn có thể phục hồi bản sao lưu nếu có lỗi xảy ra trên site. Nếu dùng WordPress, hãy cân nhắc dùng plugin sao lưu. Hoặc liên hệ nhà cung cấp hosting xem họ có tạo bản sao lưu định kỳ cho bạn không.

1. File Manager

Nhiều nhà cung cấp hosting cho phép truy cập các file quan trọng của website qua file manager.

Để làm điều này, đăng nhập vào hosting, vào file manager, và tìm file .htaccess của bạn.

File .htaccess của bạn thường nằm trong thư mục gốc.public_html” trong ví dụ dưới đây của chúng tôi:

Trình quản lý file hosting website hiển thị file .htaccess trong thư mục gốc public_html.

Nhấp đúp vào “.htaccess” để mở trình soạn thảo văn bản thuần túy.

Sau đó, bạn có thể thay đổi bất kỳ nội dung nào — như thêm hoặc xóa directive — rồi nhấn nút lưu.

.htaccess file editor trong trình quản lý file của web host.

2. FTP Client

FTP client là ứng dụng giúp bạn chuyển file giữa máy tính và website. Cyberduck là ví dụ về FTP client.

Bạn cần cài đặt FTP client nếu chưa có, có thể phải liên hệ với host để lấy thông tin kết nối.

Khi đã có FTP client, bạn đăng nhập vào site qua FTP. Ví dụ chúng tôi dùng Cyberduck.

Nhấn “Open Connection” rồi nhập thông tin đăng nhập, thường do host cung cấp.

Giao diện client Cyberduck FTP hiển thị khả năng mở kết nối tới các file của website và khu vực nhập thông tin đăng nhập.

Tiếp theo, bật hiển thị file ẩn. Các file bắt đầu bằng dấu chấm (như .htaccess) mặc định bị ẩn, bạn không thể xem hoặc chỉnh sửa.

Để hiện file ẩn trong Cyberduck, vào “Edit” > “Preferences” > “Browser” rồi đánh dấu vào “Show hidden files.”

Trình duyệt Cyberduck FTP client với tùy chọn hiển thị các file ẩn.

Thoát phần preferences. Rồi tìm file .htaccess, thường nằm trong thư mục gốc.

Chọn file rồi nhấn “Edit.”

Giao diện client Cyberduck FTP với quyền truy cập vào các file public_html của website.

File .htaccess sẽ mở trên máy bạn dưới dạng file văn bản thuần túy.

Bạn chỉnh sửa trực tiếp trong file rồi lưu lại. Thay đổi sẽ tự động cập nhật vào .htaccess.

3. WordPress Plugin

Các plugin như Yoast giúp bạn dễ dàng chỉnh sửa file .htaccess ngay trên backend của site.

Đăng nhập WordPress để tải và kích hoạt plugin Yoast.

Rồi nhấn “Yoast SEO” và chọn “Tools.”

Menu thanh bên plugin Yoast SEO cho WordPress.

Nhấn “File editor.”

Tùy chọn plugin Yoast SEO WordPress để chỉnh sửa file.

Kéo xuống phần file .htaccess và chỉnh sửa trực tiếp trong ô văn bản. Lưu lại bằng cách nhấn “Save changes to .htaccess.”

Màn hình chỉnh sửa file .htaccess của plugin Yoast SEO WordPress.

Cách tạo file .htaccess

Nếu bạn chưa có file .htaccess, làm theo hướng dẫn dưới đây để tự tạo.

File Manager

Để tạo file .htaccess trong file manager của host, chọn thư mục bạn muốn đặt file. Lưu ý file .htaccess ảnh hưởng đến thư mục đó và các thư mục con của nó..

Màn hình quản lý file của web host hiển thị lựa chọn các file public_html.

Rồi nhấn nút tạo file mới.

Trình quản lý file của web host hiển thị tùy chọn tạo file mới trong thư mục gốc.

Đặt tên file là “.htaccess” (có dấu chấm). Nhấn “Confirm.”

Giao diện web host để tạo file mới với tên ".htaccess."

Bạn đã có file .htaccess để chỉnh sửa.

Trình quản lý file của web host hiển thị file .htaccess trống được tạo từ đầu.

FTP Client

Để tạo file .htaccess bằng FTP client, lưu một file văn bản thuần túy trên máy tính với tên “.htaccess” (có dấu chấm). Bạn có thể dùng ứng dụng như Notepad để tạo file văn bản thuần túy.

Sau đó, trong FTP client bạn chọn (chúng tôi dùng Cyberduck), hãy chọn thư mục bạn muốn đặt file .htaccess vào (ví dụ như “public_html”). Rồi nhấn “Upload” và chọn file .htaccess đã lưu trên máy tính của bạn.

Giao diện client Cyberduck FTP hiển thị tùy chọn tải lên file mới.

File .htaccess của bạn giờ đã sẵn sàng để sử dụng.

4 chỉ thị .htaccess phổ biến

Bốn chỉ thị .htaccess này sẽ giúp bạn cải thiện và tùy chỉnh trang web.

1. Thêm Redirects bằng .htaccess

Bạn có thể redirect URLs bằng .htaccess theo nhiều cách tùy mục đích redirect của bạn.

Trước khi thêm một số loại redirect, bạn có thể cần kích hoạt module RewriteEngine bằng cách thêm chỉ thị này vào file .htaccess của bạn:

<IfModule mod_rewrite.c>
RewriteEngine On
</IfModule>

Sau đó, thêm các chỉ thị redirect của bạn dưới module này.

Chúng tôi sẽ bao gồm đoạn mã “RewriteEngine On” khi cần trong mỗi ví dụ dưới đây để rõ ràng. Nhưng tùy cách thiết lập file .htaccess của bạn, có thể không cần thêm mỗi lần.

Lưu ý

Hãy chắc chắn thay “yourdomain” trong mỗi chỉ thị dưới đây bằng domain trang web của bạn.

Redirect URL riêng lẻ

Redirect URL riêng lẻ với chỉ thị này:

Redirect 301 /old-page/ https://www.yourdomain.com/new-page/

“old-page” là phần đường dẫn URL — phần nằm sau domain của bạn. Phần này phải bắt đầu bằng dấu gạch chéo.

Phần thứ hai phải là đầy đủ URL của trang mới.

Người dùng sẽ được tự động redirect đến trang mới mỗi khi họ truy cập URL cũ.

Redirect URL có WWW sang URL không có WWW

Nếu domain của bạn dùng subdomain www, bạn có thể dùng file .htaccess để redirect sang phiên bản không có www với chỉ thị này:

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

Redirect Subfolders đến vị trí mới

Subfolder là thư mục nằm bên trong một thư mục khác trên trang của bạn. Ví dụ, trong “www.yourdomain.com/blog,” phần “blog” là một subfolder.

Bạn có thể redirect subfolders đến các vị trí khác trên domain bằng file .htaccess với chỉ thị này (dùng đường dẫn URL của bạn):

RewriteEngine On
RewriteRule ^/?blog/(.*)$ /news/$1 [R,L]

Trong ví dụ trên, bất kỳ URL nào trong subfolder “blog” sẽ được redirect đến subfolder “news”.

Redirect domain cũ sang domain mới

Bạn cũng có thể dùng file .htaccess để redirect người dùng từ domain cũ sang domain mới với chỉ thị này:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^(?:www\.)?oldsite\.com$ [NC]
RewriteRule ^(.*)$ https://newsite.com%{REQUEST_URI} [L,R=301]

Điều này chuyển hướng cả phiên bản www và không-www của domain của bạn đến domain mới.

Các cách khác để chuyển hướng URL

Còn có những cách khác để chuyển hướng URL nếu bạn không muốn chỉnh sửa file .htaccess.

Trước tiên, hãy chạy audit cho site của bạn để xem trang nào cần chuyển hướng.

Công cụ Semrush Site Audit có thể giúp bạn xác định những trang đó.

Trong công cụ Site Audit, nhập URL của bạn và nhấn “Start Audit”.”

Giao diện Site Audit để thêm tên miền, với yourdomain.com đã nhập.

Cấu hình các thiết lập audit trên trang tiếp theo. Ví dụ như số trang bạn muốn kiểm tra trong audit và tần suất bạn muốn chạy audit.

Mẹo

Hướng dẫn cấu hình Site Audit của chúng tôi có thể giúp bạn chọn thiết lập phù hợp nếu bạn gặp khó khăn. có thể giúp bạn chọn cài đặt phù hợp nếu bạn bị mắc kẹt.

Nhấn “Start Site Audit” sau khi đã cấu hình xong các thiết lập audit.

Màn hình cấu hình cài đặt Site Audit.

Khi audit hoàn tất, nhấn “Issues” và tìm mục “# pages returned 4XX status code.” Điều này nghĩa là server không thể truy cập các trang đó do lỗi phía client.” và tìm “# pages returned 4XX status code.” Có nghĩa là server không thể truy cập các trang đó do lỗi phía client.

Nhấn vào “# pages” để xem từng trang bị ảnh hưởng.

Kết quả Site Audit hiển thị 2 trang gặp lỗi mã trạng thái 4xx.

Xem lại các trang bạn cần chuyển hướng và những trang bạn muốn giữ lại dưới dạng 404 Error (nếu có).

Bạn có thể muốn một trang hiển thị 404 Error nếu bạn đã xóa trang đó và không có trang phù hợp nào để chuyển hướng người dùng đến.

Để thực hiện chuyển hướng cho các trang này trên WordPress mà không cần chỉnh sửa file .htaccess, bạn có thể dùng plugin như Yoast.

Nhấn “Yoast SEO” và “” và “Redirects” trong thanh công cụ bên trái sau khi cài đặt và kích hoạt plugin.

Menu bên của plugin Yoast SEO WordPress hiển thị tùy chọn redirects.

Chọn loại redirect bạn muốn. Chúng ta sẽ dùng 301 vì muốn chuyển hướng vĩnh viễn trang cũ sang trang mới.

Màn hình chọn loại chuyển hướng của plugin Yoast SEO WordPress hiển thị tùy chọn 301 Moved Permanently.

Nhập slug của trang cũ URL slug — phần cuối của URL — và slug URL đích. Rồi nhấn “—phần cuối của URL—và slug URL đích. Rồi nhấn “.”

Plugin Yoast SEO WordPress hiển thị URL cũ chuyển hướng đến URL mới.

Cuối cùng, kiểm tra URL bằng cách nhập URL cũ vào thanh địa chỉ để đảm bảo nó chuyển hướng đến trang mới. Bạn nên xóa cache trước khi thử.

2. Tải trang 404 Error tùy chỉnh với .htaccess

File .htaccess của bạn cũng cho phép tải các trang 404 error tùy chỉnh — trang hiển thị khi server không tìm thấy trang web tại URL đó. Điều này xảy ra khi trang không còn tồn tại hoặc ai đó nhập sai URL.

Bạn có thể muốn một trang 404 phản ánh thương hiệu của bạn, và có thể hướng người dùng đến các nội dung hoặc trang phù hợp.

Ví dụ, trang 404 của chúng tôi trông như sau:

Trang 404 của Semrush.

Đầu tiên, tạo trang bạn muốn tải khi ai đó gặp lỗi 404.

Sau đó, thêm đoạn code này vào file .htaccess của bạn:

ErrorDocument 404 /404-page.html

Và cập nhật đường dẫn cho phù hợp với đường dẫn trang 404 tùy chỉnh của bạn.

Trang 404 tùy chỉnh của bạn sẽ được tải bất cứ khi nào ai đó truy cập vào một trang trên site bạn mà không tồn tại.

Các cách khác để tạo trang 404 tùy chỉnh

Nếu bạn đang dùng WordPress, một plugin như Smart Custom 404 error page có thể giúp bạn tạo trang 404 khá dễ dàng.

Cách làm như sau:

Cài đặt và kích hoạt plugin khi bạn đăng nhập vào site WordPress của mình. Sau đó vào “Pages” và “Add New Page.”

Menu bên WordPress hiển thị tùy chọn Thêm Trang Mới.

Tạo và xuất bản trang 404 tùy chỉnh trong trình soạn thảo.

Trình chỉnh sửa trang WordPress hiển thị ví dụ về trang 404 tùy chỉnh.

Sau khi xuất bản trang, nhấn “Appearance” và “404 Error Page” trong thanh menu.

Menu bên của WordPress hiển thị tùy chọn thay đổi trang 404 Error.

Chọn trang lỗi của bạn từ menu thả xuống và nhấn “Save Changes.”

Giao diện plugin Yoast SEO WordPress để thêm trang 404 tùy chỉnh.

Kiểm tra trang 404 bằng cách truy cập một URL không tồn tại trên site bạn. Nó sẽ chuyển hướng đến trang 404 mới.

3. Ép site bạn tải bằng HTTPS qua .htaccess

Hypertext transfer protocol secure (HTTPS) mã hóa dữ liệu truyền giữa trình duyệt và website của bạn. Giúp bảo mật dữ liệu gửi từ trình duyệt đến server.

Hơn nữa, HTTPS là một tín hiệu xếp hạng. Vì vậy, dùng nó có thể giúp thứ hạng của bạn tốt hơn.

Nếu site bạn có chứng chỉ SSL, bạn có thể ép dùng HTTPS thay vì HTTP bằng cách chỉnh file .htaccess.

Để làm vậy, thêm đoạn code sau vào file .htaccess của bạn:

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Lưu ý

Bạn có thể cần chỉnh sửa một số phần trong quy tắc trên cho phù hợp với tình huống cụ thể. Ví dụ như bạn muốn áp dụng cho toàn bộ traffic hay chỉ một số thư mục.

Các cách khác để dùng HTTPS thay cho HTTP

Nhà cung cấp hosting thường có thể giúp bạn chuyển sang HTTPS.

Một số còn có tùy chọn một cú nhấp để ép HTTPS:

Màn hình HTTPS Enforce trong bảng điều khiển web hosting.

Vì vậy, hãy liên hệ với nhà cung cấp hosting để được hỗ trợ thiết lập HTTPS nếu bạn không muốn chỉnh sửa file .htaccess.

4. Bật bảo vệ mật khẩu bằng file .htaccess

Bạn có thể bật bảo vệ mật khẩu cho toàn site hoặc một số khu vực cụ thể bằng file .htaccess.

Điều này hữu ích nếu bạn đang cập nhật site và chỉ muốn một số người nhất định truy cập, ví dụ như nhà thiết kế web của bạn.

Bạn cần hai file để bảo vệ mật khẩu cho site: .htpasswd và .htaccess.

Đầu tiên, vào trình quản lý file của nhà cung cấp hosting.

Thêm một file mới ngoài thư mục gốc. Đặt tên là “.htpasswd” và nhấn “Confirm.”

Quan trọng: Tốt nhất bạn nên đặt file .htpasswd ngoài thư mục gốc vì như vậy sẽ an toàn hơn.

Giao diện web host hiển thị khả năng thêm file mới với tên ".htpasswd."

Nhấp đúp vào file .htpasswd để mở và chỉnh sửa. Đây là nơi bạn thêm username và password để truy cập site.

Màn hình quản lý file của web host hiển thị file .htpasswd nằm ngoài thư mục gốc.

Sau đó bạn cần mã hóa mật khẩu (vì lý do bảo mật). Một công cụ miễn phí như HTPasswd Generator sẽ giúp mã hóa mật khẩu cho bạn.

Chỉ cần nhập tên đăng nhập, mật khẩu và nhấn “Generate .htpasswd file.” rồi sao chép kết quả đầu ra.

Công cụ HTPasswd Generator hiển thị việc mã hóa mật khẩu.

Dán kết quả vào file .htpasswd và lưu lại.

Mật khẩu được mã hóa cùng với tên người dùng bên trong file .htpasswd.

Cuối cùng, mở file .htaccess và thêm chỉ thị này:

# Bảo vệ bằng mật khẩu
AuthType Basic
AuthName "Restricted Area"
AuthUserFile /path/to/.htpasswd
Require valid-user

Hãy chắc chắn thay đổi đường dẫn trong dòng “AuthUserFile” thành đường dẫn đến file .htpasswd của bạn. Sau đó lưu file lại.

Truy cập vào website của bạn. Nếu chỉ thị hoạt động, trang sẽ hiển thị yêu cầu đăng nhập khi tải.

Nhập tên đăng nhập và mật khẩu rồi nhấn “Sign in” để truy cập trang.

Hộp đăng nhập trên trang web do bảo vệ mật khẩu .htaccess.

Cách khác để bảo vệ trang bằng mật khẩu

Nếu bạn dùng WordPress, cách dễ hơn để thiết lập bảo vệ mật khẩu cho trang là dùng tính năng bảo vệ mật khẩu có sẵn trên nền tảng.

Đăng nhập vào trang và vào trang hoặc bài viết bạn muốn bảo vệ bằng mật khẩu.

Bên cạnh “Visibility,” nhấn vào “Public.”

Trang WordPress với chế độ hiển thị đặt thành Public.

Chọn vòng tròn bên cạnh “Password protected” và nhập mật khẩu bạn muốn dùng. Sau đó thoát ra và nhấn “Update.”

Tùy chọn khả năng hiển thị trang WordPress với chỗ nhập mật khẩu để bảo vệ bằng mật khẩu.

Khi ai đó cố truy cập trang, họ sẽ thấy giao diện như sau:

Trang WordPress được bảo vệ bằng mật khẩu.

Và họ cần mật khẩu để xem nội dung.

Nhưng cách này chỉ cho phép một mật khẩu cho mỗi trang — không thể có nhiều mật khẩu khác nhau cho từng người dùng.

Nếu cần thêm tính năng, bạn có thể cân nhắc dùng các plugin WordPress.

Các vấn đề hiệu suất thường gặp liên quan đến .htaccess

Hãy lưu ý các vấn đề này nếu bạn dự định dùng file .htaccess để thay đổi trang.

Tốc độ

Dùng nhiều file .htaccess hoặc file quá phức tạp có thể ảnh hưởng đến hiệu suất trang và làm nó chạy chậm.

Tại sao?

Bởi vì Apache phải đọc và giải thích từng chỉ thị mỗi khi có yêu cầu gửi đến server.

Vì vậy, hãy cân nhắc kỹ những gì cần đưa vào .htaccess và những gì không.

Và giữ file càng ngắn gọn càng tốt để tránh ảnh hưởng đến hiệu suất. Vì page speed là yếu tố xếp hạng, bạn muốn trang tải nhanh.

Mặc dù không có độ dài lý tưởng cho file .htaccess, một cách để kiểm tra xem file .htaccess có ảnh hưởng đến tốc độ trang không là chạy các bài test tốc độ trước và sau khi chỉnh sửa file.

Các công cụ miễn phí như Google’s Page Speed Insights cho phép bạn kiểm tra tốc độ trang bằng cách nhập URL:

PageSpeed Insights cho Semrush.com cho thấy trang web đang đạt chuẩn Core Web Vitals.

Bạn có thể cần nói chuyện với một developer để xem xét file .htaccess nếu trang của bạn tải chậm sau khi cập nhật.

Bảo mật

Vì file .htaccess cho phép bạn chuyển hướng toàn bộ trang web, nên nếu ai đó hack trang của bạn, họ có thể dùng file .htaccess để chuyển hướng trang của bạn đến nơi khác.

Vì vậy, hãy kiểm tra file .htaccess định kỳ để phát hiện bất kỳ chỉ thị nào bạn không thêm vào.

Ngoài ra, hãy duy trì sao lưu định kỳ cho trang web của bạn. Lý tưởng nhất là host của bạn cũng sẽ làm điều này, nhưng bạn cũng nên giữ bản sao lưu riêng.

Như vậy, bạn có thể nhanh chóng phục hồi trang web về phiên bản cũ hơn (bao gồm cả phiên bản cũ của file .htaccess) nếu có sự cố xảy ra.

Khả năng truy cập

Các chỉ thị .htaccess cấu hình sai có thể gây ra vấn đề về khả năng truy cập. Ví dụ như chuyển hướng sai khiến người dùng không đến đúng trang.

Người dùng có xu hướng rời khỏi trang của bạn (và có thể chuyển sang đối thủ) nếu họ không tìm thấy nội dung mình muốn.

Vì vậy, bạn cần chú ý đến các vấn đề kỹ thuật có thể phát sinh từ các chỉ thị .htaccess cấu hình sai.

Phát hiện vấn đề kỹ thuật trên trang của bạn

File .htaccess cho phép bạn thực hiện các thay đổi mạnh mẽ trên trang một cách tương đối dễ dàng.

Nhưng những chỉnh sửa đó cũng có thể gây ra lỗi không mong muốn.

Hãy sử dụng công cụ Site Audit để giúp bạn giữ cho trang không có lỗi khi chỉnh sửa file .htaccess.

Site Audit theo dõi lỗi và gửi cho bạn các cập nhật định kỳ, nên bạn không cần lo lắng phải tự theo dõi.

Hãy thử ngay hôm nay.

Nguồn tham khảo

https://www.semrush.com/blog/htaccess-file/ ↗

Đưa góc nhìn thành kế hoạch.

Chia sẻ website và mục tiêu để LionTech tư vấn giải pháp phù hợp.

Đăng ký tư vấn ↗
THÊM MỘT GÓC NHÌN CHO THƯƠNG HIỆU

Để lại website và email để LionTech tiếp nhận yêu cầu báo cáo hiện diện AIO.

Bằng việc gửi, bạn đồng ý để LionTech liên hệ qua email về yêu cầu báo cáo.