File .htaccess là một trong những file hệ thống quan trọng trên một website WordPress. Rất nhiều điều chỉnh quan trọng được thiết lập trong file này. Vì thế sẽ có nhiều câu hỏi đặt ra: file .htaccess là gì? File .htaccess được đặt ở đâu? Tại sao tôi không thể tìm ra file .htaccess trên site WordPress của mình?
Trong bài viết này MGGH sẽ giúp bạn giải quyết các vấn đề trên.
File .htaccess là gì?
File .htaccess là một file cấu hình hệ thống của server. Thông thường nó chỉ chạy trên các web server dùng máy chủ Apache. Máy chủ web sẽ đọc các thông tin cấu hình trong file này và thực thi. Vì vậy đây là một trong những file cực kỳ quan trọng trên WordPress. Một số chức năng có thể điều khiển trong file .htaccess có thể kể đến như chuyển hướng (redirect), redirect http qua https, chuyển hướng từ non-www sang www hoặc ngược lại, đặt password cho thư mục và file, bật tính năng nén file Gzip, chặn ip truy cập…
Lưu ý .htaccess là tên file luôn chứ không phải một file có phần đuôi mở rộng là htaccess nhé.
File .htaccess được đặt ở đâu?
Thông thường file này sẽ được đặt ở thư mục gốc của website WordPress. Nó sẽ có tác dụng lên tất cả các folder, file cùng chứa trong thư mục với nó. Do file này được đặt trong thư mục gốc của website nên nó sẽ có ảnh hưởng lên toàn bộ site. Đại khái là như vậy.
Vấn đề nữa là thư mục gốc của website là thư mục nào?
Thông thường thư mục gốc của site WordPress dùng cPanel sẽ nằm ở thư mục public_html trong trường hợp bạn chỉ có 1 site duy nhất trong gói hosting.
Nếu bạn có thêm addon domain (nhiều tên miền trong 1 gói hosting), thì nó sẽ nằm trong thư mục có tên website.
Dù trong trường hợp nào đi nữa thì nó cũng nằm chung với các thư mục chứa mã nguồn WordPress như thư mục wp-admin, wp-content, wp-includes…
Lý do bạn không thể tìm thấy file .htaccess?
Có 2 lý do chính khiến bạn không thể tìm thấy file .htaccess trong thư mục gốc của website.
- File .htaccess đã bị ẩn
- File .htaccess không hề tồn tại trong thư mục gốc của site
Ngoài ra còn một lý do khác khiến bạn không thể thấy file .htaccess là bạn dùng hosting với máy chủ web NGINX chứ không phải máy chủ Apache như thông thường. Máy chủ dùng NGINX sẽ không thực thi thao tác thông qua file .htaccess nhằm tối ưu hóa hiệu suất. Vì thế nếu bạn đang dùng Apache thì mới làm theo hướng dẫn tiếp theo đây nhé.
Mình sẽ đi chi tiết từng trường hợp và cách giải quyết.
1. Trình duyệt file không hiển thị được file .htaccess
Như mình đã đề cập ở trên tên file .htaccess có dấu chấm ở phía trước nên nó có thể được xem như một file ẩn của hệ thống. Nếu bạn duyệt file của site WordPress thông qua các trình quản lý file FTP, có thể sẽ xảy ra trường hợp file .htaccess bị ẩn đi. Đó là lý do bạn không tìm thấy nó trong vị trí thư mục gốc.
Để khắc phục vấn đề này, bạn đơn giản chỉ cần vào trình quản lý file FTP, chỉnh sửa cho nó hiển thị file ẩn là xong.
Ví dụ nếu bạn sử dụng FileZilla, bạn có thể vào mục Server >> Force showing hidden files để bắt buộc FileZilla hiển thị tất cả các file ẩn.
Trường hợp nếu bạn dùng trình duyệt file mặc định của cPanel, bạn cũng có thể bật tùy chọn hiển thị toàn bộ file ẩn lên. Truy cập File Maneger, chọn phần Settings, sau đó chọn Show hidden files (dotfiles)
Đối với những trình duyệt file FTP khác, bạn cũng có thể làm tương tự thôi. Nằm đâu đó trong phần setting hoặc Preferences.
Sau khi tích chọn mục này, bạn quay lại thư mục gốc, refresh lại trình quản lý file sẽ tìm thấy được file .htaccess nằm ở đó thôi.
2. File .htaccess chưa được tạo ra
Nếu làm cách thứ 1 xong mà bạn vẫn không thể thấy được file .htaccess thì có thể do file này chưa hề tồn tại trên hệ thống.
File này thường được tạo ra tự động trên WordPress khi nó cấu hình phần Permalinks.
Nếu file này chưa được tự động tạo ra thì bạn hãy vào WordPress Dashboard>>Settings>> Permalinks và click vào nút “Save Changes” 2 lần nhé.
Chú ý: Bạn không cần phải thay đổi gì trong mục này cả, cứ nhấn Save Changes là được. Đôi khi chỉ cần nhấn nút này 1 lần là được, nhưng thi thoảng bạn phải nhấn nút này tới 2 lần thì WordPress mới tạo file .htaccess. Thôi thì nhấn 2 lần cho chắc.
Trong một số trường hợp WordPress không thể tự động tạo file .htaccess cho bạn. Bạn có thể tự tạo file này trên thư mục gốc của website. Sau đó thêm code cần thiết vào trong đó.
Bạn mở Notepad trên Windows lên, điền code vào, sau đó lưu file có tên là .htaccess. Bạn nhớ là phần Save as type nhớ chọn là All files nhé, đừng để dạng text (txt). Sau đó upload lên thư mục gốc của website.
Bạn có thể dùng file mẫu mặc định của WordPress để upload lên web của bạn. Mình có tạo sẵn tại đây. Tải về rồi upload lên cũng được.
Lưu ý: Nếu vẫn bị lỗi không upload lên được, có thể thư mục gốc của website bạn đang bị giới hạn quyền truy cập. Bạn có thể tìm hiểu bài viết cách quản lý và thay đổi File Permission trong cPanel để fix lỗi trên. Mặc định permission như hình dưới (750), bạn có thể đổi thành 755, sau khi upload xong nhớ change lại như cũ nhé.
Trên đây là bài hướng dẫn sửa lỗi không tìm thấy file .htaccess trên WordPress. Hi vọng bài viết sẽ giúp ích được cho các bạn. Nếu có thắc mắc gì hãy để lại comment bên dưới nhé.