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.
Nếu bạn dùng host sử dụng cPanel thì hãy tìm mục Aliases (giao diện mới) hoặc Parked Domain (giao diện cũ) và thêm domain cần sử dụng cho website con vào. Lưu ý mã nguồn của website phải nằm ở thư mục public_html.
Nếu mã nguồn nằm ở một thư mục con trong public_html, hãy vào phần Addon Domain và thêm domain vào, thiết lập thư mục vào đúng thư mục đang chứa mã nguồn website.
Nếu bạn dùng máy chủ riêng với VestaCP thì hãy sửa website trên VestaCP và điền tên miền cần làm tên miền riêng cho website con ở mục Aliases.
Nếu bạn dùng EasyEngine thì hãy gõ lệnh ee site edit domain.com và nhập domain cần thêm vào mục server_name. Sau đó nhớ khởi động lại NGINX.
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 );
Sửa tên miền website con
Bây giờ chúng ta truy cập vào [textmarker color=”2977FF”]My Sites -> Network Admin -> Sites[/textmarker] và tìm website con cần sửa tên miền, chọn Edit.
Sau đó sửa [textmarker color=”2977FF”]Site Address (URL)[/textmarker] 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 [textmarker color=”2977FF”]Admin Network -> Sites -> All Sites -> Edit website cần thiết lập -> Settings[/textmarker] và chọn đường dẫn là https như hình dưới.
Lời kết
Nhìn chung cách sử dụng domain riêng cho các website con có thể thiết lập hơi rối một chút nhưng cũng không khó để làm, ngoài ra mình cũng đã thử nghiệm với giao thức HTTPS và nó hoàn toàn hoạt động rất tốt.
Ở bài sau mình sẽ giới thiệu qua một số plugin rất hay dành cho WordPress Multisite mà bạn có thể cài vào sử dụng.