Sep 18, 2017
130 Views

[wordpress] Hướng dẫn cài đặt wp MULTISITE

Written by

ỨNG DỤNG CỦA WORDPRESS MULTISITE

Hầu hết nếu chúng ta có nhu cầu tạo ra một mạng lưới nhiều website liên kết với nhau trên cùng một máy chủ thì có thể sử dụng WordPress Multisite. Chúng ta có thể sử dụng WordPress Multisite để tạo nhiều trang con trong một mạng lưới như vậy, thậm chí có thể kết nối các người dùng ở mỗi website lại với nhau để họ có thể đăng nhập được trên bất kỳ trang nào trong mạng lưới.

LỢI ÍCH VÀ KHI NÀO KHÔNG NÊN DÙNG WORDPRESS MULTISITE

Trước hết chúng ta sẽ cần biết lợi ích của việc dùng WordPress Multisite là:

  • Dễ dàng quản lý bản cập nhật của mã nguồn và của các plugin/theme bởi vì tất cả các website con trong mạng lưới đều dùng chung một mã nguồn, một phiên bản theme và plugin.
  • Có thể tạo ra bao nhiêu website con tùy thích và dễ dàng phân quyền, quản lý nó.
  • Tiết kiệm tài nguyên vì dùng một mã nguồn cho nhiều website sẽ tiết kiệm hơn là mỗi website một mã nguồn.

Tuy nhiên, chúng ta nên cân nhắc không nên sử dụng WordPress Multisite khi:

  • Bạn cần mỗi website là một IP riêng vì các website con cho dù có dùng tên miền riêng đi chăng nữa cũng chỉ là trỏ đến IP của website mẹ nên không thể dùng IP riêng cho các website con.
  • Bạn cần database riêng bởi vì tất cả các website con trong một mạng lưới sẽ dùng chung một database, chỉ là nó có những bảng dữ liệu riêng.

Nhìn chung nếu bạn cần xây dựng một hệ thống website mà bạn tin rằng sẽ không có sự khác biệt quá lớn về hình thức thì có thể dùng tính năng này.

KÍCH HOẠT WORDPRESS MULTISITE

Bây giờ bạn mở tập tin wp-config.php của website mẹ cần kích hoạt tính năng này và chèn đoạn sau vào bên dưới <?php.

define( 'WP_ALLOW_MULTISITE', true );

Sau đó vào lại trang quản trị WordPress tìm mục Tools -> Network Setup để bắt đầu cài đặt.

Nhưng trước khi chúng ta cài đặt thì cần xác định sẽ sử dụng kiểu WordPress Multisite nào, hiện tại nó có 2 kiểu là:

  • Subdomain: Các website con sẽ là một địa chỉ theo dạng subdomain của website mẹ. Ví dụ wordpress.thachpham.net, seo.thachpham.net, hosting.thachpham.net,…Và nếu bạn dùng kiểu này sẽ cần thiết lập wildcard DNS như mình hướng dẫn phía dưới.
  • Sub-directory: Các website con sẽ là một địa chỉ theo dạng thư mục con. Ví dụ: thachpham.net/wordpress, thachpham.net/seo, thachpham.net/hosting,…

Phần Network Details bạn nhập tên mạng và địa chỉ email của người quản trị cao nhất vào nhé.

Sau đó nhấp nút Install để bắt đầu cài đặt. Nó sẽ chuyển bạn đến trang kế tiếp và bắt đầu chèn những code vào tập tin theo hướng dẫn. Cụ thể là chèn code phía trên vào bên dưới <?php trong wp-config.php và code phía là thay thế các code có sẵn trong .htaccess (nếu bạn dùng Shared Host hoặc Apache Webserver):

 

Sau khi chèn xong các code theo yêu cầu bạn ấn nút Log In để đăng nhập lại và bây giờ bạn sẽ thấy trên menu quản trị có thêm phần My Sites để truy cập vào các website con.

caidat-multisite4

Thế là ta đã hoàn thành việc cài đặt WordPress Multisite.

THIẾT LẬP WILDCARD DNS

Nếu bạn sử dụng kiểu đường dẫn của các website con là subdomain thì bạn phải thiết lập wildcard DNS bằng cách thêm một bản ghi vào DNS như sau:

* IN A 127.0.0.1

Trong đó bạn thay 127.0.0.1 thành IP của host chứa website. Dưới đây là ví dụ mình thiết lập wildcard DNS khi mình sử dụng DNS tại CloudFlare:

caidat-multisite-wildcarddns

SỬ DỤNG DOMAIN RIÊNG CHO WEBSITE CON

Mặc định mỗi website con trong mạng WordPress Multisite chỉ có 2 định dạng là subdomain hoặc subdirectory. Tuy nhiên chúng ta vẫn có giải pháp sử dụng tên domain cho từng website như một website riêng thật sự mà không cần dùng plugin nào.

TRỎ DOMAIN VÀ THÊM VÀO HOST

Trước khi thiết lập domain riêng cho website con, bạn cần phải trỏ domain về host và thêm nó vào trong host ở cùng thư mục website. Dưới đây là các cách thêm domain vào host ở từng môi trường khác nhau.

SỬA TẬP TIN WP-CONFIG.PHP

Bây giờ bạn hãy mở tập tin wp-config.php trên host ra và tìm đoạn sau:

define('SUBDOMAIN_INSTALL', true);

Sửa true thành false.

Sau đó thêm đoạn sau vào dưới nó:

define( ‘COOKIE_DOMAIN’, $_SERVER['HTTP_HOST'] );

SỬA TÊN MIỀN WEBSITE CON

Bây giờ chúng ta truy cập vào My Sites -> Network Admin -> Sites và tìm website con cần sửa tên miền, chọn Edit.

Sau đó sửa Site Address (URL) thành tên miền riêng và lưu lại.

Bây giờ thử truy cập vào tên miền riêng nhé.

CHỨNG CHỈ SSL VÀ GIAO THỨC HTTPS CHO DOMAIN WEBSITE CON

Khi sử dụng domain cho website con thì do bản chất các domain website con là alias của domain chính nên domain chính và các domain phụ thêm vào phải chung chứng chỉ SSL nếu bạn cần sử dụng giao thức HTTPS cho các website con.

Nếu bạn dùng Let’s Encrypt tự cài thì có thể tạo chứng chỉ cho nhiều domain với lệnh giống như dưới đây:

/opt/le/letsencrypt-auto certonly --standalone -d thachpham.net -d thachpham.info

Nếu bạn đã có chứng chỉ sẵn rồi và cần thêm domain vào thì dùng lệnh giống dưới đây:

/opt/le/letsencrypt-auto certonly --standalone --agree-tos 
--email [email protected] 
--expand -d thachpham.net,www.thachpham.net,thachpham.info,www.thachpham.info

Nếu bạn dùng host cPanel có hỗ trợ Let’s Encrypt như host tại AZDIGI thì bạn vào mục Let’s Encrypt SSL và ấn nút Reissue hoặc Issue và chọn các alias cần tạo chứng chỉ chung là được.

Khi dùng SSL, hãy nhớ vào Admin Network -> Sites -> All Sites -> Edit website cần thiết lập -> Settings và chọn đường dẫn là https như hình dưới.

Article Tags:
· · · · · · · · ·
Article Categories:
Code/Web
    http://linholiver.com

    https://linholiver.com/diary/about/