Xin chào các bạn, hôm nay mình lại trở lại cùng các bạn tìm hiểu thêm về một số kiến thức trang wordpress tiêu đề ngay hôm nay là “Code thủ thuật với file .htaccess trong WordPress” các bạn cùng tham khảo nhé
Với tập tin .htaccess là phần vô cùng quan trọng trong khi bạn thiết kế web, nhất là đối với web wordpress, file này làm được rất nhiều điều hay ho, ở bài này chúng ta cùng đi tìm hiểu về nó nhé
File .htaccess là gì
Tập tin .htaccess (hypertext access) là một file có ở thư mục gốc của các hostting và do apache quản lý, cấp quyền. File .htaccess có thể điều khiển, cấu hình được nhiều thứ với đa dạng các thông số, nó có thể thay đổi được các giá trị được set mặc định của apache.
Nếu được khai thác tốt thì .htaccess sẽ giúp được bạn rất nhiều việc mà tốn rất ít công sức đơn giản chi vài dòng lệnh là được. Cách thức mà bạn sử file .htaccess cũng thật đơn giản cứ mở bằng một trình soạn thảo nào đó chỉnh sửa xong save as lại với thành file .htaccess là xong.
Cấu trúc 1 file .htaccess như sau:
# BEGIN WordPress
# The directives (lines) between “BEGIN WordPress” and “END WordPress” are
# dynamically generated, and should only be modified via WordPress filters.
# Any changes to the directives between these markers will be overwritten.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule .* – [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ – [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
Code thủ thuật với file htaccess trong WordPress
Bảo vệ file .htaccess
.htaccess là file quan trọng nên việc đầu tiên chúng ta cần bảo vệ file này, bạn dùng code dưới đây copy và pase vào file .htaccess
<files ~ “^.*\.([Hh][Tt][Aa])”>
order allow,deny
deny from all
satisfy all
</files>
Bảo vệ tập tin wp-config.php
File này cũng quan trọng không thua kém gì, đây là file cấu hình chứa thông tin Database, thông tin quản lý hosting, và nhiều các thông tin tài khoản khác, hack truy cập được vào file này thì họ có thể quản lý được web của chúng ta. Do đó, bạn nên vô hiệu hóa việc người lạ truy cập vào nó
<files wp-config.php>
order allow,deny
deny from all
</files>
Bảo vệ thư mục wp-content
Thư mục này là rất dễ các hacker sâm nhập, nơi đây chứa các plugin, img, themes, uploads, languages….nên chúng ta cần bảo vệ chúng, dưới đây là doạn code hữu ích giúp giải quyết các mối đe dọa bảo mật bằng cách tạo ra một tập tin htaccess riêng cho thư mục /wp-content/ và thêm đoạn code sau đây vào trong
Order deny,allow
Deny from all
<Files ~ “.(xml|css|jpe?g|png|gif|js)$”>
Allow from all
</Files>
Sau đó bạn cần phải upload tập tin htaccess này vào thư mục /wp-content/. Nó thường nằm ở đường dẫn: /public_html/wp-content/. Việc làm này sẽ cho phép các tập tin media được tải lên bao gồm XML, CSS, JPG, JPEG, PNG, GIF và JavaScript. Tất cả các loại tập tin khác sẽ bị từ chối.
Chặn include-only files
Có một số tập tin mà người dùng không bao giờ được phép đụng tới (thường nằm trong các thư mục có tên chứa từ “includes”). Bạn có thể chặn việc truy cập vào những tập tin này bằng cách thêm đoạn code sau vào tập tin htaccess:
# Block the include-only files.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^wp-admin/includes/ – [F,L]
RewriteRule !^wp-includes/ – [S=3]
RewriteRule ^wp-includes/[^/]+\.php$ – [F,L]
RewriteRule ^wp-includes/js/tinymce/langs/.+\.php – [F,L]
RewriteRule ^wp-includes/theme-compat/ – [F,L]
</IfModule>
Hạn chế truy cập khu vực Admin
Khu vực Admin là khu vực quản trị, chỉ có những người là chủ sở hữu mới vào được, vì vậy, chúng ta cần hạn chế những người khác vào bằng cách chỉ mặc định cho IP của admin vào thôi, còn các IP khác không thể nhìn thấy vào không vào được khu vực này, dưới đây là code.
# Limit logins and admin by IP
<Limit GET POST PUT>
order deny,allow
deny from all
allow from 12.34.56.78
</Limit>
12.34.56.78 bạn có thể thay đổi bằng của mình nhé, hoặc của máy nào mà bạn muốn truy cập, bạn có thể thêm nhiều IP bằng cách mỗi địa chỉ IP cách nhau dấu phảy “,” Sau đó upload tập tin htaccess vào thư mục /wp-admin/. Nó thường nằm ở đường dẫn: /public_html/wp-admin/. Nếu muốn thêm các địa chỉ IP khác, bạn chỉ cần thêm tiếp vào mục allow from.
Cấm một ai đó truy cập website
Nếu bạn biết IP của người đó và bạn muốn cấm truy cập vào web của bạn thì đây là đoạn code khá hữu dụng dành cho bạn
<Limit GET POST>
order allow,deny
deny from 123.456.78.9
deny from 987.654.32.1
allow from all
</Limit>
Chuyển hướng khách truy cập đến trang bảo trì
Nếu web của bạn đang xẩy ra một lỗi nào đó bạn đang cần bảo trì web, bạn không muốn khách hàng thất vọng khi vào web của bạn, bạn hãy chuyển hướng người dùng đến trang khác, hoặc đến trang có thông báo đang bảo trì, việc này tăng tính chuyên nghiệp, và trải nghiệm người dùng. Việc đơn giản bạn chỉ cần copy đoạn code vào file .htaccess là ok
RewriteEngine on
RewriteCond %{REQUEST_URI} !/maintenance.html$
RewriteCond %{REMOTE_ADDR} !^123\.123\.123\.123
RewriteRule $ /maintenance.html [R=302,L]
Bạn có thể thay maintenance.html bằng trang thông báo bảo trì của bạn
Kích hoạt cache cho trình duyệt
Kích hoạt cache (bộ nhớ đệm) cho trình duyệt web là một trong những thủ thuật nhằm tăng tốc độ load và giảm tải cho blog/ website. Khi được kích hoạt, trình duyệt web sẽ cache các dữ liệu đã tải trước đó (CSS, JS, hình ảnh…), giúp khách truy cập tiết kiệm thời gian vì họ không cần phải tải lại các tài nguyên. Việc này cũng giúp bạn tiết kiệm tài nguyên cho host.
Để cho phép kích hoạt bộ nhớ đệm, tất cả những gì bạn cần làm là thêm đoạn code sau đây vào tập tin htaccess trong thư mục gốc của WordPress:
## EXPIRES CACHING ##
<IfModule mod_expires.c>
ExpiresActive On
ExpiresByType image/jpg “access 1 year”
ExpiresByType image/jpeg “access 1 year”
ExpiresByType image/gif “access 1 year”
ExpiresByType image/png “access 1 year”
ExpiresByType text/css “access 1 month”
ExpiresByType application/pdf “access 1 month”
ExpiresByType text/x-javascript “access 1 month”
ExpiresByType application/x-shockwave-flash “access 1 month”
ExpiresByType image/x-icon “access 1 year”
ExpiresDefault “access 2 days”
</IfModule>
## EXPIRES CACHING ##
Chuyển hướng URL
Chuyển hướng 301 giúp bạn thông báo cho công cụ tìm kiếm rằng một URL đã chuyển hướng đến vị trí mới. Chúng có thể được sử dụng để chuyển hướng một trang, một bài viết hoặc thậm chí là cả một website. Do đó chúng đặc biệt hữu ích khi bạn thay đổi URL của site (có thể là thay đổi tên miền, thay đổi cấu trúc permalink hoặc chỉ đơn giản là thay đổi link bài viết).
Để chuyển hướng một trang, tất cả những gì bạn cần làm là thêm một dòng với cấu trúc “Redirect 301 [dấu cách] URL cũ [dấu cách] URL mới” vào trong file htaccess. Bạn có thể xem cách làm việc này trong ví dụ dưới đây:
Redirect 301 /oldpage.html http://www.yourwebsite.com/newpage.html
Redirect 301 /oldfolder/page2.html /folder3/page7.html
Redirect 301 / http://www.mynewwebsite.com/
Trên mình đã hướng dẫn các bạn một số code tiện ích từ file .htaccess bạn có thắc mắc hay muốn hướng dẫn gì thêm hãy liên hệ với chúng tôi để được tư vấn miễn phí.