Ngoài lý do lịch sử, có lý do nào để có www www trong một URL không?
Tôi nên tạo một chuyển hướng vĩnh viễn từ www.xyz.com
đến xyz.com
, hoặc từ xyz.com
đến www.xyz.com
? Bạn muốn đề xuất cái nào và tại sao?
Ngoài lý do lịch sử, có lý do nào để có www www trong một URL không?
Tôi nên tạo một chuyển hướng vĩnh viễn từ www.xyz.com
đến xyz.com
, hoặc từ xyz.com
đến www.xyz.com
? Bạn muốn đề xuất cái nào và tại sao?
Câu trả lời:
Một trong những lý do tại sao bạn cần www
hoặc một số tên miền phụ khác phải giải quyết vấn đề DNS và bản ghi CNAME.
Giả sử cho các mục đích của ví dụ này rằng bạn đang điều hành một trang web lớn và ký hợp đồng lưu trữ vào CDN (Mạng phân phối nội dung) như Akamai. Những gì bạn thường làm là thiết lập bản ghi DNS cho trang web của bạn dưới dạng CNAME tới một số akamai.com
địa chỉ. Điều này mang lại cho CDN cơ hội cung cấp địa chỉ IP gần với trình duyệt (theo thuật ngữ địa lý hoặc mạng). Nếu bạn đã sử dụng bản ghi A trên trang web của mình, thì bạn sẽ không thể cung cấp tính linh hoạt này.
Điểm khó hiểu của DNS là nếu bạn có bản ghi CNAME cho tên máy chủ, bạn không thể có bất kỳ bản ghi nào khác cho cùng máy chủ đó. Tuy nhiên, tên miền cấp cao nhất của bạn example.com
thường phải có bản ghi NS và SOA. Do đó, bạn cũng không thể thêm bản ghi CNAME cho example.com
.
Việc sử dụng www.example.com
cung cấp cho bạn cơ hội sử dụng CNAME cho www
các điểm đó vào CDN của bạn, trong khi để lại các bản ghi NS và SOA cần thiết example.com
. Bản example.com
ghi thường sẽ có bản ghi A để trỏ đến máy chủ sẽ chuyển hướng đến www.example.com
sử dụng chuyển hướng HTTP.
ALIAS
(hoặc ANAME
hồ sơ) trong loại chủ đề này? Nó không đạt được kết quả tương tự như CNAME trên nudedomain (ngoại trừ vấn đề cookie ...)?
Lưu ý: Kể từ khi phê chuẩn và triển khai (bởi tất cả các trình duyệt hiện tại, ngoại trừ MSIE 11 , xem các bình luận) của RFC 6265 vào năm 2011, điều sau đây không còn chính xác nữa, vì các cookie theo mặc định không bao giờ được đặt trên các tên miền phụ.
Trong lịch sử , một lý do kỹ thuật tốt để thực hiện www.example.com
chính tắc là cookie của một tên miền chính (nghĩa là example.com
) đã được gửi đến tất cả các tên miền phụ.
Vì vậy, nếu trang web của bạn sử dụng cookie, chúng sẽ được gửi đến tất cả các tên miền phụ của nó.
Bây giờ, điều này thường có ý nghĩa nhưng nó có hại tích cực nếu bạn chỉ muốn tải xuống tài nguyên tĩnh vì nó chỉ lãng phí băng thông. Xem xét tất cả các biểu định kiểu và hình ảnh trên trang web của bạn: thông thường, không có lý do gì để gửi cookie đến máy chủ khi yêu cầu tài nguyên hình ảnh.
Do đó, một giải pháp tốt là sử dụng tên miền phụ cho tài nguyên tĩnh, chẳng hạn như static.example.com
để tiết kiệm băng thông bằng cách không gửi cookie. Tất cả các hình ảnh và tải về tĩnh khác có thể được tải xuống từ đó. Nếu bây giờ bạn sử dụng www.example.com
cho nội dung động, điều này có nghĩa là cookie chỉ phải được gửi đến www.example.com
chứ không phải gửi đến static.example.com
.
Tuy nhiên, nếu example.com
trang web chính của bạn, thì cookie sẽ được gửi đến tất cả các tên miền phụ, bao gồm static.example.com
.
Bây giờ điều này không phù hợp với hầu hết các trang web nhưng việc thay đổi URL chính tắc của bạn sau này không phải là một ý tưởng hay vì vậy một khi bạn đã giải quyết example.com
thay vì www.*
, về cơ bản bạn bị mắc kẹt với nó.
Một cách khác là sử dụng một URL hoàn toàn khác cho tài nguyên tĩnh. Ví dụ sử dụng Stack Overflow sstatic.net
, sử dụng YouTube, ytimg.com
v.v.
www.x
là URL chính tắc nên cá nhân tôi có thể sẽ sử dụng một URL khác cho tài nguyên tĩnh nếu tôi thiết kế một trang web lớn.
domain=example.com
sẽ đặt cookie trên miền apex và trên các tên miền phụ , và một cách để tránh điều này là không sử dụng miền apex cho HTTP. Mặc dù, đã đồng ý, một cách khác chỉ đơn giản là không chỉ định domain
khi đặt cookie. Tôi tự hỏi liệu điều này đã thay đổi kể từ khi tôi viết câu trả lời của mình (trước RFC 6265 có liên quan !) Nhưng tôi không thể bận tâm tìm kiếm nó ngay bây giờ.
www
là một tên miền phụ thường được sử dụng cho máy chủ web trên một tên miền cùng với các mục đích khác cho các mục đích khác, mail
v.v. Ngày nay, mô hình tên miền phụ là không cần thiết; nếu bạn kết nối với một trang web trong trình duyệt, bạn sẽ nhận được trang web hoặc gửi thư đến máy chủ sẽ sử dụng dịch vụ thư của nó.
Sử dụng www
hay không là vấn đề sở thích cá nhân. Quan điểm đối lập có thể được tìm thấy tại http://no-www.org/ và http://www.yes-www.org/ - tuy nhiên, tôi tin rằng điều đó www
là không cần thiết và chỉ cần thêm nhiều hành trình vào URI.
Hầu hết các máy chủ đều gửi cùng một trang, nhưng không chuyển hướng. Đối với mục đích SEO, chọn một, sau đó lấy cái khác để chuyển hướng đến nó. Ví dụ, một số mã PHP để làm điều này:
if (preg_match('/www/', $_SERVER['SERVER_NAME'])) {
header("Location: http://azabani.com{$_SERVER['REQUEST_URI']}");
exit;
}
Tuy nhiên, một số lý do thúc đẩy việc sử dụng www
tên miền phụ được thực hiện bởi những người trả lời khác cũng rất tuyệt, chẳng hạn như không gửi cookie đến máy chủ tĩnh (tín dụng Konrad Rudolph ).
Nó khá là lịch sử. Ngày xưa chúng ta thường có www.example.com, ftp.example.com, hình ảnh.example.com, uk.example.com, v.v ... có vẻ như là một điều hợp lý để làm và cung cấp một phương pháp đơn giản để truyền tải giữa may chủ.
Những ngày này tôi sẽ chỉ đi ví dụ.com cho trang web chính và chuyển hướng phiên bản www đến đó.
Các công cụ Google Webmaster cho phép bạn chỉ định tên miền ưa thích của mình , vì vậy hãy đảm bảo bạn cũng sử dụng các tên miền đó.
Xem thêm:
https://stackoverflow.com/questions/1109356/www-or-not-www-what-to-choose-as-primary-site-name
https://stackoverflow.com/questions/1884157/to- www-hoặc-không-đến-www
Nếu bạn sắp có tên miền phụ cho các mục đích khác (ví dụ blog), bạn có thể muốn phân biệt các trang web và có www
tiền tố cho trang web thông thường. Mặt khác, điều quan trọng duy nhất là chọn một trong hai và bám vào nó (vì lý do SEO).
www.example.com
từ example.com
hoặc ngược lại mà không có thứ gì đó như JSONP.
Tôi sẽ làm đầu tiên. Quy www
ước này xuất phát từ những ngày đầu của HTTP, nơi www.cmu.edu và cmu.edu rất có thể là các máy khác nhau.
Đây là một quan điểm nhỏ khác.
Khi không có www, có một nhược điểm nhỏ khi nói đến phương tiện dựa trên văn bản, dù được in hay trực tuyến và điều đó khiến nó được công nhận là địa chỉ web. Trong bản in, thông thường khá rõ ràng là example.com là một địa chỉ web và bạn có thể thêm các kiểu chạm để làm nổi bật điều đó. Nhưng văn bản đơn giản trực tuyến? Không dễ thế đâu. Cơ hội là nếu bạn gửi một tin nhắn văn bản đơn giản - cho dù email, tweet, bài đăng trên Facebook, SMS hay bất cứ điều gì - nó sẽ nhận ra một URL bắt đầu bằng http: // hoặc www. nhưng sẽ không nhận ra một mà không có một trong hai. Vì vậy, để làm cho URL thành một liên kết có thể nhấp, bạn phải đặt www. hoặc http: // ở mặt trước và của hai, www. ngắn hơn, ít lộn xộn hơn để nhìn và dễ đọc hơn.
http://example.com/
là hoàn toàn đủ điều kiện trong khi www.example.com
không. Tôi thích cách tiếp cận đầy đủ vì nó là luôn luôn dễ nhận biết như một URL bất kể cho dù đó là https://example.uk/
hay https://blog.example.eu/
hay bất cứ điều gì. Nó phù hợp với việc chỉ định giao thức của một trang web an toàn là HTTPS; www.example.com
chỉ là một miền và không nói gì về giao thức nào nên sử dụng để truy cập nó.