Tạo sub-domain bằng Apache WildCard DNS

Vấn đề subdomain được nhiều bạn quan tâm, nên lần này TKS xin viết bài hướng dẫn tạo subdomain theo user như kiểu các dịch vụ blog hay làm : letung.thietkeso.vn chẳng hạn
Giải pháp trình bày dưới đây là tạo các tên miền ảo bằng wildcard DNS. Bài sử dụng phần mềm quản lí DirectAdmin làm ví dụ.

Tạo wildcard DNS

Để làm được việc này bạn cần có tài khoản Admin, hoặc bạn có thể nhờ bên cung cấp hosting lo cho vụ này.

B1 Tạo sub domain bằng Apache WildCard DNS

DNS AdministratorBạn chọn domain cần tại wildcard DNS sau đó tạo 1 record có type A và name * , value là dải IP của máy chủ để khi tạo, các subdomain sẽ cùng trỏ về đây.

Tiếp tục vào Custom HTTPD Configurations như hình dưới đây:

B3 Tạo sub domain bằng Apache WildCard DNS

Custom HTTPD ConfigurationsChọn domain cần tạo wildcard DNS, rồi gõ vào câu này và dòng trên cùng của text area

ServerAlias *.|DOMAIN|

Gõ đúng y vậy, không phải thay |DOMAIN| bằng domain của mình, vì tự dộng Direct Admin thay.

B4 Tạo sub domain bằng Apache WildCard DNS

Add server AliasVậy là xong phần tạo WildCard DNS. Bạn cần reboot lại server, apache lại để những gì bạn vừa cấu hình hoạt động. Khi nào bạn gõ subdomain nó tự redirect về trang chính là được (ví dụ bạn gõ abc.nhanweb.com sẽ chuyển về nhanweb.com).

Rewrite wildcard DNS subdomain

Nhiệm vụ của bước này là khi chúng ta gõ subdomain thì chuyển về một dạng khác để xử lý trên trang chính (ví dụ letung.thietkeso.vn ==>  thietkeso.vn?username=letung chẳng hạn). Việc này chúng ta có thể nhờ Apache xử lý như sau:

RewriteEngine On
RewriteBase /

#www is not a user subdomain
RewriteCond %{HTTP_HOST} ^www.thietkeso.vn[NC,OR]
RewriteCond %{HTTP_HOST} ^thietkeso.vn[NC]
RewriteRule ^(.*) $1 [L]

#redirect wildcard subdomains
RewriteCond %{HTTP_HOST} ([^.]+).thietkeso.vn[NC]
RewriteRule ^$ /program.php?user=%1 [L]

ErrorDocument 404 /index.php

Tạo sub-domain bằng Apache WildCard DNS, 10.0 out of 10 based on 1 rating

Không có bài viết cùng chuyên mục.