2013-03-02 37 views
45

Tôi đã thực hiện tìm kiếm trên web cho câu hỏi nhưng hoàn toàn thất vọng với kết quả. Trường hợp này là chuyển hướng tất cả các yêu cầu đến domain.com đến tên miền phụ www.domain.com.Chuyển hướng DNS domain.com đến www.domain.com

Vì vậy, những gì tôi có:

  1. www.domain.com - miền trang web chính, tất cả các yêu cầu của khách hàng nên chuyển hướng đây
  2. domain.com - một điểm vào trang web cho những người không sử dụng tiền tố www, tất cả các yêu cầu sẽ được chuyển hướng đến www.domain.com
  3. mydomain.com - bí danh trang web thay thế, tất cả yêu cầu nên được chuyển hướng đến www.domain.com
  4. www.mydomain.com - cho những người sử dụng tiền tố www, mọi yêu cầu nên được chuyển hướng đến www.domain.com

Tôi hiểu điều này là có thể sử dụng .htaccess và PHP. Nhưng tôi muốn tìm hiểu làm thế nào điều này có thể được thực hiện bằng cách sử dụng DNS chỉ. Tôi cũng hiểu rằng kết quả của truy vấn DNS không thay đổi những gì xảy ra trong lớp HTTP để tên miền được nhập ban đầu sẽ luôn là tên miền được gửi tới máy chủ web trong Máy chủ lưu trữ. Vì vậy, để viết lại domain.com để www.domain.com tôi vẫn sẽ cần Apache mod_rewrite. Nhưng tôi muốn làm phần chính của công việc với DNS (bản ghi CNAME và A).

Vì vậy, câu hỏi chính là những gì CNAME và A ghi lại từng tên miền ở trên phải có?

+3

Để trả lời những người đã đóng câu hỏi: sẽ không hiệu quả hơn khi liên kết câu hỏi này với câu hỏi có liên quan trên trang web "thích hợp" (có lẽ là serverfault) không? Và DNS đó hoàn toàn là "tắt chủ đề" cho một nhà phát triển web có phần yếu là một đối số. Tôi thực sự nghĩ có quá nhiều sự háo hức để đóng các câu hỏi. Đây là, bằng cách này, là liên kết google hàng đầu. Điều này phản ánh tình trạng nghèo nàn của cộng đồng để có được chính sách "tắt chủ đề" quá mức của các kết quả tìm kiếm hàng đầu. – Emmel

+1

Ở đây tôi là một nhà phát triển web, tự hỏi làm thế nào tôi chuyển hướng cuộc gọi mà không có tên miền phụ 'www', đến đó. –

Trả lời

41

Bạn có thể tạo www.domain.com bản ghi A và tất cả các tên miền khác CNAME của www.domain.com. Nhưng điều này chỉ "giải quyết" rằng nếu địa chỉ IP của www.domain.com thay đổi bạn không phải thay đổi các DNS khác xâm nhập vì chúng là bí danh.

Vì vậy, ở cấp DNS, không có cách nào để thực thi chuyển hướng. Và vì một lý do chính đáng vì DNS được sử dụng cho nhiều hơn thì chỉ có HTTP. Ví dụ: nếu tất cả yêu cầu cho domain.com sẽ chuyển hướng đến www.domain.com, địa chỉ email của bạn sẽ thay đổi thành [email protected]

Vì vậy, để chuyển hướng HTTP, bạn sẽ phải sử dụng giải pháp HTTP. Điều này có thể ở cấp độ máy chủ web (mod_rewrite, trong mã, javascript (ugh), vv ..) nhưng bạn cũng có thể có một proxy ở phía trước máy chủ web của bạn để xử lý việc này.

+0

Michaël, cảm ơn bạn rất nhiều! – Maksim

Các vấn đề liên quan