Giới thiệu về .htaccess và WordPress
.htaccess là một tập tin cấu hình mạnh mẽ cho các máy chủ web Apache. Nó cho phép bạn điều chỉnh hành vi của máy chủ cho các thư mục cụ thể trên trang web của bạn. Đối với người dùng WordPress, .htaccess thường được sử dụng để điều khiển permalinks (liên kết tĩnh), bảo mật, hiệu suất và nhiều hơn nữa. Việc chỉnh sửa .htaccess có thể rất hữu ích nhưng cũng cần cẩn thận, vì một sai sót nhỏ có thể gây ra lỗi trên trang web của bạn.
Bài viết này sẽ giới thiệu 12 thủ thuật .htaccess hữu ích cho WordPress, giúp bạn tận dụng tối đa sức mạnh của nó để cải thiện trang web của mình.
1. Thiết lập Permalinks thân thiện với SEO
Một trong những công dụng phổ biến nhất của .htaccess trong WordPress là thiết lập permalinks (liên kết tĩnh) thân thiện với SEO. Mặc định, WordPress có thể sử dụng các URL không thân thiện với SEO. .htaccess giúp bạn chuyển đổi chúng thành các URL dễ đọc hơn cho cả người dùng và công cụ tìm kiếm.
Ví dụ, bạn có thể chuyển từ ?p=123 thành /ten-bai-viet.
Để thực hiện điều này, hãy thêm đoạn code sau vào tập tin .htaccess của bạn:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
Sau khi thêm đoạn code này, bạn cần vào phần “Cài đặt > Đường dẫn tĩnh” trong trang quản trị WordPress và chọn một cấu trúc permalink phù hợp (ví dụ: “Tên bài viết”).
2. Chặn truy cập vào wp-config.php
Tập tin wp-config.php chứa các thông tin quan trọng về cơ sở dữ liệu của bạn, bao gồm tên cơ sở dữ liệu, tên người dùng và mật khẩu. Bảo vệ tập tin này là điều tối quan trọng.
Để chặn truy cập trực tiếp vào tập tin này, hãy thêm đoạn code sau vào .htaccess:
<files wp-config.php>
order allow,deny
deny from all
</files>
3. Ngăn chặn duyệt thư mục
Nếu một thư mục trên trang web của bạn không có tập tin index.php hoặc index.html, người dùng có thể duyệt qua nội dung của thư mục đó. Điều này có thể gây ra các vấn đề bảo mật.
Để ngăn chặn việc duyệt thư mục, hãy thêm dòng sau vào .htaccess:
Options -Indexes
4. Chặn truy cập vào wp-admin từ các địa chỉ IP cụ thể
Nếu bạn muốn hạn chế quyền truy cập vào khu vực quản trị WordPress (wp-admin) chỉ cho một số địa chỉ IP nhất định, bạn có thể sử dụng .htaccess.
Hãy thay thế YOUR_IP_ADDRESS bằng địa chỉ IP của bạn:
<Directory /path/to/your/wordpress/wp-admin>
order deny,allow
deny from all
allow from YOUR_IP_ADDRESS
</Directory>
Bạn có thể thêm nhiều dòng allow from để cho phép nhiều địa chỉ IP khác nhau.
5. Bảo vệ tập tin .htaccess
Bản thân tập tin .htaccess cũng cần được bảo vệ để ngăn chặn truy cập trái phép.
Sử dụng đoạn code sau để chặn truy cập trực tiếp vào .htaccess:
<files .htaccess>
order allow,deny
deny from all
</files>
6. Chặn các Bots xấu
Có rất nhiều bots trên internet, một số trong số đó có thể gây hại cho trang web của bạn bằng cách spam bình luận, quét nội dung hoặc tiêu thụ băng thông. Bạn có thể chặn các bots xấu bằng cách sử dụng .htaccess.
Ví dụ:
RewriteEngine On
# Block bad bots
RewriteCond %{HTTP_USER_AGENT} ^(BadBot1|BadBot2|AnotherBadBot) [NC]
RewriteRule .* - [F,L]
Thay thế BadBot1, BadBot2 và AnotherBadBot bằng tên của các bots bạn muốn chặn.
7. Tạo chuyển hướng 301
Chuyển hướng 301 (Permanent Redirect) được sử dụng để chuyển hướng người dùng và công cụ tìm kiếm từ một URL cũ sang một URL mới. Điều này rất hữu ích khi bạn thay đổi cấu trúc URL của trang web của mình.
Ví dụ, để chuyển hướng từ /old-page sang /new-page, hãy sử dụng đoạn code sau:
RewriteEngine On
RewriteRule ^old-page$ /new-page [R=301,L]
8. Kích hoạt nén Gzip
Nén Gzip có thể giúp giảm kích thước các tập tin được gửi từ máy chủ đến trình duyệt của người dùng, giúp trang web tải nhanh hơn.
Để kích hoạt nén Gzip, hãy thêm đoạn code sau vào .htaccess:
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
</IfModule>
9. Bộ nhớ đệm cho trình duyệt (Browser Caching)
Bộ nhớ đệm cho trình duyệt giúp trình duyệt lưu trữ các tập tin tĩnh (ví dụ: hình ảnh, CSS, JavaScript) trên máy tính của người dùng, giúp trang web tải nhanh hơn trong các lần truy cập tiếp theo.
Để kích hoạt bộ nhớ đệm cho trình duyệt, hãy thêm đoạn code sau vào .htaccess:
<IfModule mod_expires.c>
ExpiresActive On
ExpiresDefault "access plus 1 year"
ExpiresByType image/jpeg "access plus 1 year"
ExpiresByType image/gif "access plus 1 year"
ExpiresByType image/png "access plus 1 year"
ExpiresByType text/css "access plus 1 month"
ExpiresByType application/javascript "access plus 1 month"
ExpiresByType application/x-javascript "access plus 1 month"
ExpiresByType text/html "access plus 1 hour"
</IfModule>
Bạn có thể điều chỉnh thời gian lưu trữ (ví dụ: “1 year”, “1 month”, “1 hour”) cho phù hợp.
10. Chặn hotlinking hình ảnh
Hotlinking là hành động sử dụng hình ảnh trên trang web của bạn trên các trang web khác mà không lưu trữ chúng. Điều này có thể tiêu tốn băng thông của bạn.
Để ngăn chặn hotlinking, hãy thêm đoạn code sau vào .htaccess:
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www.)?yourdomain.com [NC]
RewriteRule .(jpg|jpeg|png|gif)$ - [NC,F,L]
Thay thế yourdomain.com bằng tên miền của bạn.
Bạn có thể thay đổi dòng RewriteRule để hiển thị một hình ảnh placeholder thay vì chặn hoàn toàn:
RewriteRule .(jpg|jpeg|png|gif)$ http://www.yourdomain.com/images/placeholder.gif [R,L]
11. Thay đổi trang lỗi 404 mặc định
Bạn có thể tùy chỉnh trang lỗi 404 (Not Found) để cung cấp trải nghiệm tốt hơn cho người dùng khi họ truy cập một trang không tồn tại.
Tạo một trang 404 tùy chỉnh (ví dụ: 404.php) và thêm đoạn code sau vào .htaccess:
ErrorDocument 404 /404.php
12. Các lưu ý quan trọng khi chỉnh sửa .htaccess
Chỉnh sửa .htaccess có thể gây ra các vấn đề nghiêm trọng nếu bạn không cẩn thận. Dưới đây là một số lưu ý quan trọng:
- Sao lưu tập tin .htaccess trước khi thực hiện bất kỳ thay đổi nào.
- Sử dụng trình soạn thảo văn bản đơn giản (ví dụ: Notepad trên Windows, TextEdit trên Mac) để chỉnh sửa .htaccess.
- Kiểm tra cú pháp của code trước khi lưu.
- Nếu bạn gặp lỗi, hãy hoàn tác các thay đổi gần đây nhất.
- Tham khảo tài liệu chính thức của Apache để biết thêm thông tin về .htaccess.
- Luôn kiểm tra trang web của bạn sau khi thực hiện bất kỳ thay đổi nào.
- Hãy chắc chắn rằng bạn hiểu rõ những gì code bạn đang thêm vào .htaccess.
- Nếu bạn không chắc chắn, hãy tìm kiếm sự giúp đỡ từ một chuyên gia.
- Sử dụng các công cụ kiểm tra .htaccess trực tuyến để đảm bảo không có lỗi.
- Thận trọng khi sao chép code từ các nguồn không đáng tin cậy.
- Ghi lại các thay đổi bạn đã thực hiện để dễ dàng gỡ lỗi nếu cần thiết.
