Cấu hình 2 tên miền chạy chung một website (Domain Pointer)
Bạn có một website nhưng lại muốn chạy 2 tên miền khách nhau. Ví dụ domain.com và domain2.com. Vậy bạn cần phải làm gì để có thể trỏ nhiều domain về 1 website chạy WordPress?Chúng ta cần giải quyết 3 vấn đề:

  1. Tạo Domain Pointer
  2. Cấu hình cho  phép gõ tên miền nào thì trên trình duyệt sẽ hiển thị tên miền đó
  3. Cài đặt SEO để tránh google đánh dấu nhiều website trùng nội dung.

Cấu hình 2 tên miền chạy chung 1 website (Domain Pointer)

1. Domain pointer có tác dụng gì?

Domain pointer là dạng domain chạy song song với domain chính. Khi cấu hình domain pointer, bạn sẽ có 2 domain chạy trên 1 hosting, 1 website, 1 database. Nói cách khác cho dù bạn gõ tên domain nào vào thanh địa chỉ trong web browse đều đến 1 website của bạn trong hosting.



2. Cách cấu hình Domain Pointer

Bước 1: Đăng nhập vào trang quản trị hosting, click [Domain Pointers].

cau hinh chay 2 ten mien tren 1 website



Bước 2: Nhập tên miền phụ vào. Tên miền này sẽ trỏ về tên miền chính trên hosting. Click [Add] để hoàn thành

chay 2 ten mien tren 1 website

Chuyển WP_SITEURL và WP_HOME 2 tên miền chạy chung 1 website

Mặc định khi thêm Domian Pointer  thì bạn đã có thể truy cập 2 tên miền đều trỏ về cùng 1 website. Tuy nhiên điều bạn muốn làm là khi gõ domain.com thì nó sẽ trả lại URL là domain.com và ngược lại domain2.com thì cũng trả về URL domain2.com. Vì vậy chúng ta cần thêm đoạn code sau vào file wp-config.php để khi khách vào bằng domain nào thì vẫn giữa nguyên ở domain đó và link các bài post, page vẫn ở domain mà khách truy cập.

Thêm đoạn code này vào file wp-config.php

define('WP_SITEURL', 'https://' . $_SERVER['HTTP_HOST']);
define('WP_HOME', 'https://' . $_SERVER['HTTP_HOST']);

Vậy là hoàn tất. Bạn đã có thể truy cập vào các domain bạn thích bình thường. Chuyển xuống bước tiếp theo nhé đó là tránh việc bị Google đánh giá trùng nội dung trên nhiều tên miền khác nhau.

 

Azdigi

Cài đặt SEO tránh giảm thứ hạng trên Google

Chắc chắn khi bạn dùng Worpress thì không thể thiếu plugin Yoast SEO. Hãy thêm đoạn code sau vào file functions.php trong theme để có thể chuyển toàn bộ lưu lượng truy cập canonical về toàn bộ site chính và sẽ không bị google đánh dấu trùng nội dung khi có nhiều parked domain (Aliases)

Thêm đoạn code này  vào file functioins.php

//canonical - old domain to new domain
add_filter('wpseo_canonical', 'swpseo_canonical_domain_replace');
function swpseo_canonical_domain_replace($url){
$domain = 'your-domain.com';// Thay đổi cái này về site chính của bạn vd ở đây là your-domain.com
$parsed = parse_url(home_url());
$current_site_domain = $parsed['host'];
return str_replace($current_site_domain, $domain, $url);
}

Vậy là đã okie. Bạn có thể sử dụng thoải mái mà không sợ ảnh hưởng tới SEO rồi

Khắc phục lỗi font khi chạy với domain phụ

Khi đã cài đặt xong nhiều domain chạy trên 1 source wordpress nhưng bị lỗi khi load các font .

Bạn hãy copy đoạn code sau vào file .htaccess là được

<IfModule mod_headers.c>
<FilesMatch "\.(ttf|ttc|otf|eot|woff|woff2|font.css|css|js)$">
Header set Access-Control-Allow-Origin "*"
</FilesMatch>
</IfModule>

Chúc các bạn thành công!

5/5 - (9 bình chọn)



Nhận thông báo qua email
Nhân thông báo cho
guest
6 Bình luận
Bình chọn nhiều nhất
Mới nhất Cũ nhất
Inline Feedbacks
View all comments
Bánh màn thầu
Bánh màn thầu
3 năm cách đây

Ok good, mình đã chạy được nhưng domain phụ lại không có https kèm theo, có cách nào cho domain phụ vẫn chạy được https không

Minh
Minh
Reply to  Quản Trị Viên
3 năm cách đây

Chào bạn. Mình cài xong bị lỗi ForbiddenYou don’t have permission to access / on this server.
Cách cài ssl cho domain phụ sao bạn. Mình xài Direct admin

Minh
Minh
Reply to  Quản Trị Viên
3 năm cách đây

Bạn ơi. Bạn cho mình xin tài liệu hướng dẫn cài SSL Let’s Encrypt trên SSH được không bạn. mình xài vps Centos6 mà tìm tài liệu không ra. Cám ơn bạn nhé

Khanh Nguyen
Khanh Nguyen
Reply to  Minh
3 năm cách đây

Quá trình cập nhật DirectAdmin và các gói quá trình có thể xảy ra lỗi nên bạn nhớ backup data và code trước khi làm.

cd /usr/local/directadmin/custombuild/ 
./build update
cd /usr/local/directadmin/custombuild/ 
./build update

Cài đặt Let’s Encrypt.

./build letsencrypt
./build letsencrypt

Bật Let’s Encrypt.

grep -q ‘letsencrypt=1’ /usr/local/directadmin/conf/directadmin.conf || echo ‘letsencrypt=1’ >> /usr/local/directadmin/conf/directadmin.conf   
grep -q ‘enable_ssl_sni=1’ /usr/local/directadmin/conf/directadmin.conf || echo ‘enable_ssl_sni=1’ >> /usr/local/directadmin/conf/directadmin.conf

Khởi động lại DirectAdmin.

service directadmin restart

Bây giờ để cài đặt SSL cho domain, bạn vào “Advanced Features” -> “SSL Certificates” chọn domain và kích hoạt SSL nhé.

Hoang Phi
Hoang Phi
3 năm cách đây

Cảm ơn admin nhiều ạ. Mình đã thực hiện theo hướng dẫn và đã thành công.

6
0
Bạn thích bài viết này, viết bình luận nhé.x