.htaccess có cần thiết cho wordpress không?

Bạn có thể đã nghe nói về. htaccess trước đó nhưng không biết nó là gì hoặc nó làm gì. Trong bài viết này, chúng tôi sẽ tập trung vào. htaccess và tiết lộ bí ẩn của nó một lần và mãi mãi. Đến cuối bài viết này, bạn sẽ hiểu rằng. htaccess là gì, cái gì. htaccess và cách bạn có thể sử dụng. htaccess để đạt được một số tác vụ nhất định. Hãy bắt đầu

Mục lục

cái gì. htaccess?

Những điều bạn có thể làm với. tập tin htaccess

Sự kết luận

cái gì. htaccess?

Hãy bắt đầu bằng cách xem xét chính xác những gì một. tập tin htaccess là. 'htaccess' là viết tắt của 'truy cập siêu văn bản'. Tên này mô tả mục đích sử dụng tệp khi nó được phát triển lần đầu tiên. Nói tóm lại, nó được sử dụng để kiểm soát quyền truy cập của người dùng vào một số tệp và thư mục nhất định. Mọi thứ đã tiếp diễn kể từ đó. htaccess lần đầu tiên xuất hiện và hiện tại nó được sử dụng theo một số cách khác nhau trong WordPress mà chúng ta sẽ xem xét chi tiết

Các. htaccess là tệp cấu hình lõi WordPress được sử dụng để ghi đè cài đặt cụ thể của máy chủ Web Apache (Apache là phần mềm thường được sử dụng trên máy chủ web) hoặc để triển khai nhiều chức năng khác ảnh hưởng đến cách trang web của bạn hoạt động. Nó được bao gồm trong tất cả các bản cài đặt WordPress ngay sau khi bạn bật permalinks và thường nằm trong thư mục gốc của bản cài đặt. Bạn có thể xem hoặc chỉnh sửa nó bằng cách truy cập các tệp cài đặt thông qua ứng dụng khách FTP như FileZilla hoặc WinSCP.  

Ghi chú. Đảm bảo rằng các tùy chọn của Máy khách FTP của bạn được sửa đổi để các tệp ẩn được hiển thị

.htaccess có cần thiết cho wordpress không?

Theo mặc định, nội dung của một. htaccess của trang web WordPress, sau khi permalinks được bật, sẽ trông như thế này

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

Trong trường hợp bạn chưa biết, dấu “#” ở đầu dòng là chú thích. Các dòng nhận xét

RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.mycompanyname\.com [NC]
RewriteRule ^(.*)$ http://mycompanyname.com/$1 [L,R=301]
7 và
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.mycompanyname\.com [NC]
RewriteRule ^(.*)$ http://mycompanyname.com/$1 [L,R=301]
8 được sử dụng để nội dung vẫn được sắp xếp khi có nhiều quy tắc hơn được áp dụng sau này bởi các plugin hoặc bởi chính bạn. Bất kỳ bổ sung nào trong tương lai cho. htaccess nên được đặt bên ngoài những dòng này

Các. htaccess chủ yếu được sử dụng trong WordPress để kiểm soát permalinks trên trang web của bạn. Nó cũng có thể được sử dụng như một công cụ mạnh mẽ cho nhiều tác vụ khác, tuy nhiên, chẳng hạn như kiểm soát quyền truy cập vào một số tệp nhất định, tăng cường bảo mật và hiệu suất, gửi tiêu đề tùy chỉnh, v.v.

Ghi chú. Điều quan trọng là bất kỳ thay đổi nào được thực hiện đối với trang web của bạn. htaccess được thực hiện cẩn thận. Ngay cả một lỗi đánh máy đơn giản trong tệp này cũng có thể khiến trang web của bạn bị sập. Do đó, nếu bạn không chắc chắn về bất kỳ thay đổi nào bạn đang thực hiện, lý tưởng nhất là bạn nên kiểm tra những thay đổi này trên máy chủ dàn dựng trước khi áp dụng cho trang web trực tiếp của mình

Những điều bạn có thể làm với. tập tin htaccess

Vì vậy, hãy xem cách bạn có thể kiểm soát nhiều hơn trang web của mình với sự trợ giúp của. tập tin htaccess.  

Chuyển hướng giữa 'www' và 'không phải www'

Một cách sử dụng phổ biến của. htaccess đang đặt chuyển hướng vĩnh viễn từ “miền trần” (phiên bản không có www) của bạn sang phiên bản có www hoặc ngược lại.  

Trước khi tiếp tục, hãy đảm bảo rằng cả hai miền đều được đặt trong DNS của bạn để phân giải thành đúng địa chỉ IP của máy chủ

Ngoài ra, trong khu vực quản trị WordPress của bạn, hãy kiểm tra xem tên miền trần trụi có được đặt làm chính không

.htaccess có cần thiết cho wordpress không?

Bạn có thể chuyển hướng tên miền www sang tên miền thường bằng cách thêm đoạn mã sau vào. htaccess, bên dưới nội dung mặc định

RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.mycompanyname\.com [NC]
RewriteRule ^(.*)$ http://mycompanyname.com/$1 [L,R=301]

Để hoàn thành điều ngược lại (nếu www được đặt làm chính) và chuyển hướng từ miền 'không phải www' sang 'www', bạn cần chèn mã này

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

Nếu bạn không quen thuộc với các biểu thức chính quy được sử dụng trong mã và bạn muốn hiểu thêm về cú pháp, vui lòng dành thời gian và đọc thêm về REGEX. HTAccess Cheat Sheet là một công cụ rất hữu ích khác

Chuyển hướng 301 (chuyển hướng vĩnh viễn)

Chuyển hướng 301 cho các công cụ tìm kiếm biết rằng một URL đã được thay thế vĩnh viễn bằng một URL khác và cũng chuyển hướng người dùng đến khách truy cập đó đến một địa chỉ mới (đúng. ) url. .  

Đây là đoạn mã mà khi được đặt trong một. htaccess thực hiện thủ thuật

RewriteEngine on
RewriteCond %{HTTP_HOST} ^mycompanyname.com [NC,OR]
RewriteCond %{HTTP_HOST} ^www.mycompanyname.com [NC]
RewriteRule ^(.*)$ http://example.com/$1 [L,R=301,NC]

Trong ví dụ trên, chúng tôi đã chuyển hướng người dùng từ trang web 'mycompanyname. com đến 'ví dụ. com’. Tất nhiên, bạn sẽ muốn thay thế các phần này bằng các url của riêng bạn

Điều này cũng sẽ áp dụng cho tất cả các đường dẫn trong miền. Điều đó có nghĩa là ví dụ mycompanyname. com/mới. html sẽ chuyển hướng đến ví dụ. com/mới. html

Chuyển hướng 302 (chuyển hướng tạm thời)

Khi một nội dung tạm thời được di chuyển đến một vị trí khác, chuyển hướng 302 được sử dụng. Cú pháp giống như trong 301. Ví dụ

Redirect 302 /old.html http//www.mycompanyname.com/new.html

Từ góc độ thực tế, kết quả hoàn toàn giống nhau nhưng có một điểm khác biệt quan trọng. Với chuyển hướng 301, các công cụ tìm kiếm được thông báo rằng trang này không còn tồn tại và khi làm như vậy, sẽ khuyến khích các công cụ tìm kiếm bỏ trang này khỏi kết quả tìm kiếm. Trong trường hợp chuyển hướng 302, URL gốc vẫn được thu thập dữ liệu bởi Google sẽ tiếp tục lập chỉ mục thay vì URL mới. Do đó, đây là giải pháp lý tưởng để chuyển hướng khi bạn chỉ muốn tạm thời chuyển hướng đến nội dung thay thế

Buộc chuyển sang HTTPS

Bảo mật trang web của bạn bằng chứng chỉ SSL là điều rất quan trọng cần làm trong những ngày này. Các trang web không làm điều này giờ đây sẽ hiển thị cảnh báo trên thanh trình duyệt có thể làm suy yếu niềm tin vào trang web của bạn. Ngoài ra, Google thực sự phạt các trang web không cung cấp nội dung qua HTTPS và do đó, thứ hạng tìm kiếm của bạn có thể bị ảnh hưởng

Ngay cả khi bạn cài đặt chứng chỉ SSL trên trang web của mình, bạn vẫn có thể thấy rằng người dùng có thể truy cập phiên bản không phải HTTPS của trang web của bạn. Nếu họ làm điều này, họ sẽ vẫn nhận được cảnh báo trong trình duyệt của họ mặc dù thực tế là bạn đã cài đặt chứng chỉ SSL. Để ngăn điều này xảy ra, bạn cần buộc tất cả lưu lượng truy cập từ phiên bản HTTP không an toàn sang phiên bản HTTPS an toàn. Điều này là siêu dễ dàng để làm bằng cách sử dụng của bạn. htaccess bằng cách thêm đoạn mã sau

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

Chặn địa chỉ IP

Nếu bạn đang nhận lưu lượng truy cập thư rác hoặc trang web của bạn đang bị lạm dụng/xâm phạm từ một số địa chỉ IP nhất định, bạn có thể thực hiện hành động bằng cách sử dụng. htaccess bằng cách chặn lưu lượng truy cập từ địa chỉ IP đó bằng mã sau trong tệp của bạn. tập tin htaccess

________số 8

Nếu bạn muốn tìm hiểu cách chặn địa chỉ IP theo những cách khác, vui lòng đọc hướng dẫn này

Ngăn chặn liên kết nóng hình ảnh

Liên kết nóng hình ảnh là nơi ai đó nhúng hình ảnh trên trang web của bạn vào trang web của họ. Điều này có thể có vấn đề (và không chỉ từ góc độ Bản quyền) vì điều đó có nghĩa là máy chủ của bạn có khả năng phải làm việc thêm giờ để cung cấp (các) hình ảnh trên trang web của người khác. Bạn có thể ngăn chặn điều này bằng cách sử dụng. htaccess để chặn ai đó nhúng hình ảnh của bạn vào trang web của họ bằng mã sau

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?mycompanyname.com [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?google.com [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?yahoo.com [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ - [F]

Đừng quên thay thế 'mycompanyname. com’ với URL của trang web của bạn

Mã này chặn TẤT CẢ các trang web khỏi hình ảnh liên kết nóng trên trang web của bạn. Bởi vì bạn không muốn dừng các hình ảnh liên kết nóng của công cụ tìm kiếm, bạn sẽ cần đưa những hình ảnh này vào danh sách trắng theo cách thủ công. Phần mã đạt được điều này là phần này ở đây

RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.mycompanyname\.com [NC]
RewriteRule ^(.*)$ http://mycompanyname.com/$1 [L,R=301]
0

Tất nhiên, bạn có thể bao gồm bất kỳ trang web nào khác mà bạn muốn đưa vào danh sách trắng. Cuối cùng, dòng cuối cùng trong mã (

RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.mycompanyname\.com [NC]
RewriteRule ^(.*)$ http://mycompanyname.com/$1 [L,R=301]
9) cho biết loại phương tiện nào bị chặn

Bảo vệ tệp plugin và chủ đề

Các tệp PHP plugin và chủ đề đôi khi có thể là mục tiêu của tin tặc cố gắng tiêm mã độc vào chúng. Bạn có thể sử dụng của bạn. htaccess để giúp ngăn truy cập vào các tệp này bằng cách sử dụng đoạn mã sau

RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.mycompanyname\.com [NC]
RewriteRule ^(.*)$ http://mycompanyname.com/$1 [L,R=301]
2

Bảo vệ các tệp cốt lõi của WordPress

Rất khuyến nghị rằng một số tệp cốt lõi của WordPress không thể truy cập được đối với người dùng không phải quản trị viên. Đây là điều mà hầu hết các nhà cung cấp dịch vụ lưu trữ chăm sóc cho bạn nhưng không phải lúc nào cũng vậy. Nếu bạn muốn ngăn truy cập vào các tệp WordPress nhạy cảm, bạn có thể sử dụng đoạn mã sau trong tệp của mình. tập tin htaccess

RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.mycompanyname\.com [NC]
RewriteRule ^(.*)$ http://mycompanyname.com/$1 [L,R=301]
0

Ngăn chặn các chương trình xấu thu thập dữ liệu trang web của bạn

Bot về cơ bản là các tập lệnh web tự động có thể quét hàng triệu trang web mỗi ngày. Google sử dụng bot để quét các trang web và lấy dữ liệu từ các lần quét này để cập nhật cơ sở dữ liệu tìm kiếm khổng lồ của họ. Hy vọng rằng bot của Google hoàn toàn vô hại. Có những bot khác mặc dù bạn có thể không muốn quét trang web của mình. Một số bot 'xấu' này có thể không làm gì khác hơn là chỉ tiêu tốn băng thông máy chủ không cần thiết trong khi những bot khác có thể đang tích cực tìm kiếm các điểm yếu có thể khai thác trên trang web của bạn. Của bạn. htaccess có thể được sử dụng để chặn các bot 'xấu' này

Điều đầu tiên cần tìm hiểu là bạn muốn chặn những bot nào? . Khi bạn có danh sách của mình, bạn có thể thêm chúng vào. htaccess như thế này

RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.mycompanyname\.com [NC]
RewriteRule ^(.*)$ http://mycompanyname.com/$1 [L,R=301]
1

Sau khi lưu các thay đổi của bạn, bất kỳ bot nào trong danh sách hiện truy cập trang web của bạn sẽ nhận được trang 403 Forbidden.  

Bảo vệ wp-config. php

Thông thường, bạn nên hạn chế quyền truy cập vào wp-config. php vì nó chứa thông tin đăng nhập truy cập cơ sở dữ liệu

Để làm điều này thông qua. htaccess chỉ cần sao chép và dán các dòng sau vào. tập tin htaccess

RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.mycompanyname\.com [NC]
RewriteRule ^(.*)$ http://mycompanyname.com/$1 [L,R=301]
2

Vô hiệu hóa thực thi PHP

Một cách rất hiệu quả để được bảo vệ khỏi các nỗ lực hack là ngăn chặn việc thực thi PHP trong các thư mục cụ thể khi không cần thiết. Ví dụ: thư mục

RewriteEngine on
RewriteCond %{HTTP_HOST} ^mycompanyname.com [NC]
RewriteRule ^(.*)$ http://www.mycompanyname.com/$1 [R=301,L]
0 và
RewriteEngine on
RewriteCond %{HTTP_HOST} ^mycompanyname.com [NC]
RewriteRule ^(.*)$ http://www.mycompanyname.com/$1 [R=301,L]
1 là những vị trí phổ biến được tin tặc sử dụng để đặt mã cho phép truy cập trái phép vào máy chủ (được gọi là tệp cửa hậu). Vô hiệu hóa thực thi PHP trong các thư mục này sẽ không xóa các tệp đó mà thay vào đó sẽ ngăn chúng thực thi mã của chúng. Để làm điều này, thêm đoạn mã sau vào của bạn. tập tin htaccess

RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.mycompanyname\.com [NC]
RewriteRule ^(.*)$ http://mycompanyname.com/$1 [L,R=301]
3

Bạn cũng sẽ thấy rằng nhiều nhà cung cấp dịch vụ lưu trữ, bao gồm cả Pressidium, đã tắt tính năng thực thi PHP theo mặc định trong các thư mục này để nâng cao mức độ bảo mật cho khách hàng của họ

Vô hiệu hóa quyền truy cập XML-RPC

Đó là một vấn đề phổ biến mà các nhóm hỗ trợ tại các công ty lưu trữ nơi cài đặt WordPress nhận được hàng ngàn “POST /xmlrpc”. php HTTP/1. 1” thường liên quan đến một cuộc tấn công từ một hoặc nhiều địa chỉ IP. Một giải pháp cho vấn đề này là tắt XML-RPC

Để tắt XML-RPC cho trang web của bạn, hãy thêm các dòng mã này vào trang web của bạn. tập tin htaccess

RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.mycompanyname\.com [NC]
RewriteRule ^(.*)$ http://mycompanyname.com/$1 [L,R=301]
4

Điều đáng chú ý là xmlrpc. php là cần thiết nếu bạn đang cập nhật nội dung của mình bằng ứng dụng dành cho thiết bị di động hoặc kết nối từ xa. Vì vậy, nếu bạn đang cân nhắc việc vô hiệu hóa nó vĩnh viễn, hãy đảm bảo rằng nó không cần thiết cho công việc của bạn

Buộc các tập tin được tải xuống

Người dùng trang web có thể cực kỳ khó chịu khi bạn muốn tải xuống một tệp từ một trang web (ví dụ: PDF), thay vào đó, tệp sẽ mở trong cửa sổ trình duyệt. Nếu bạn có các tệp trên trang web của mình được cung cấp dưới dạng các mục có thể tải xuống cho người dùng thì bạn có thể chỉnh sửa. htaccess và thêm một dòng mã có thể buộc các loại tệp cụ thể được tải xuống và không hiển thị trực tiếp từ bên trong trình duyệt. Bạn sẽ thấy mã này bên dưới cùng với một số ví dụ về loại tệp mà bạn muốn người dùng có thể tải xuống trực tiếp

RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.mycompanyname\.com [NC]
RewriteRule ^(.*)$ http://mycompanyname.com/$1 [L,R=301]
5

Gửi tiêu đề HTTP tùy chỉnh

Người dùng nâng cao có thể muốn gửi tiêu đề HTTP cho khách hàng bằng cách tận dụng chỉ thị Tiêu đề của Apache. Để làm điều này, thêm đoạn mã sau vào của bạn. tập tin htaccess

RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.mycompanyname\.com [NC]
RewriteRule ^(.*)$ http://mycompanyname.com/$1 [L,R=301]
6

Ví dụ trên sẽ yêu cầu Apache thêm tiêu đề có tên “my-custom-header” cho mọi yêu cầu tới máy chủ. Nếu chúng tôi triển khai bản cập nhật này và sau đó kiểm tra tab mạng của chúng tôi trong các công cụ của trình duyệt, chúng tôi có thể xác nhận phản hồi của nó như được hiển thị bên dưới

.htaccess có cần thiết cho wordpress không?

Kỹ thuật này rất phổ biến để thêm bộ đệm và tiêu đề bảo mật hoặc thêm bộ ký tự ngôn ngữ. Hãy xem bài viết này cho một số sử dụng phổ biến. Bạn cũng có thể tìm thấy danh sách chi tiết các tiêu đề để bạn thử nghiệm trong danh sách này

Sự kết luận

Hy vọng rằng bài viết này đã cung cấp cho bạn một số hiểu biết về những điều có thể đạt được với. tập tin htaccess. Chắc chắn, nhiều thứ trong số này có thể được thực hiện bằng cách sử dụng plugin nhưng sẽ luôn hữu ích nếu bạn hiểu chính xác điều gì đang diễn ra 'dưới mui xe', đặc biệt nếu plugin không hoạt động theo cách bạn mong đợi. Nắm vững cách chỉnh sửa. htaccess thay vì dựa vào một plugin cũng giúp nâng cao trình độ chuyên môn về WordPress của bạn… và đó luôn là một điều tốt

Là. htaccess cần thiết?

tệp htaccess rất quan trọng khi thực hiện sửa đổi cấu hình theo thư mục . Khi bạn đặt một. htaccess chứa một hoặc nhiều lệnh trong một thư mục cụ thể, các lệnh được áp dụng cho thư mục đó và tất cả các thư mục con bên trong nó. Bất kỳ trình soạn thảo văn bản nào cũng có thể được sử dụng để tạo và sửa đổi.

Tại sao lại là. htaccess quan trọng?

. htaccess files (or "distributed configuration files") cung cấp cách thực hiện thay đổi cấu hình trên cơ sở từng thư mục . Một tệp, chứa một hoặc nhiều chỉ thị cấu hình, được đặt trong một thư mục tài liệu cụ thể và các chỉ thị áp dụng cho thư mục đó và tất cả các thư mục con của chúng.

mặc định là gì. htaccess cho WordPress?

Trong WordPress, mặc định. htaccess chủ yếu được sử dụng để xử lý các liên kết cố định đến các trang trên trang web WordPress của bạn . Tuy nhiên, dưới dạng tệp cấu hình, bạn cũng có thể thêm các tùy chọn cấu hình bổ sung để điều chỉnh hành vi của trang web của mình, chẳng hạn như. Chuyển hướng URL và viết lại.

Khi nào tôi nên sử dụng htaccess?

Các. htaccess thường được sử dụng khi bạn không có quyền truy cập vào tệp cấu hình máy chủ chính httpd. conf hoặc cấu hình máy chủ ảo , điều này chỉ xảy ra nếu bạn đã mua dịch vụ lưu trữ chia sẻ. Bạn có thể đạt được tất cả các trường hợp sử dụng nêu trên bằng cách chỉnh sửa (các) tệp cấu hình máy chủ chính (e. g. , httpd.