2013-03-20 30 views
20

Tôi đang gặp sự cố khi hiểu các URL chuẩn về cách các công cụ tìm kiếm và Facebook dường như xử lý chúng.Sự khác biệt giữa rel = "canonical" và og: url?

Trang web được hỗ trợ bản đồ Google của tôi cho phép khách truy cập sử dụng phương tiện truyền thông xã hội để yêu cầu biểu diễn tại quốc gia của họ. Có thể tìm thấy một trong các trang được đề cập tại: http://izzy.nogig.in/

Khi người dùng nhấp vào điểm đánh dấu quốc gia của họ, họ sẽ chia sẻ URL đó cho quốc gia đó, ví dụ: : izzy.nogig.in/usa? hoặc izzy.nogig.in/spain? vv

Tất cả các nước trong số tiền URL để rất nhiều nội dung trùng lặp vì vậy tôi sử dụng sau đây để chỉ cụ tìm kiếm để trang tôi muốn xếp hạng: -

<link rel="canonical" href="http://izzy.nogig.in/_?"/> 

Đối với Facebook Likes để tính vào mỗi quốc gia cá nhân tôi đã thiết Graph mở của tôi "og: url" như sau, ví dụ:

<meta property="og:url" content="http://izzy.nogig.in/australia?" /> 

Bây giờ khi tôi chạy một URL quốc gia cụ thể thông qua các đối tượng Debugger Facebook (. ví dụ http://developers.facebook.com/tools/debug/og/object?q=http%3A%2F%2Fizzy.nogig.in%2Faustralia%3F) nó cho thấy như sau : -

Response Code: 206 
Fetched URL: http://izzy.nogig.in/australia 
Canonical URL: http://izzy.nogig.in/australia 

Mismatch og:url and canonical url: 
og:url tag in the header is not the same URL as rel='canonical' link in the html. 

Lỗi trên là điều khiến tôi khó hiểu. Tôi biết chúng không khớp, nhưng tôi nghĩ đây là cách chính xác để làm điều này.

Mọi thứ trong trình gỡ lỗi có vẻ tốt với tôi (liên kết chính xác, mô tả, hình ảnh vv cho từng quốc gia) và tôi không thể thay đổi giá trị rel = "canonical" để khớp với og: url như tôi cần một trang đơn (không có quốc gia) cho công cụ tìm kiếm.

Tôi tin rằng tất cả đều hoạt động chính xác. Tôi có nên bỏ qua lỗi từ trình gỡ rối hay tôi đã thiết lập sai lỗi này không? Tôi không muốn "thích" cho mỗi quốc gia đều biến mất và tính vào URL rel = "canonical".

Nhiều Cảm ơn - Sẽ

+0

Dường như Facebook Open Graph Debugger không còn cảnh báo nếu trang có 'link rel =" canonical "' và 'og: url' khác nhau. – kolen

Trả lời

12

liên kết rel="canonical" sẽ được sử dụng bởi công cụ tìm kiếm nơi như og:url sẽ được sử dụng bởi facebook

og:url cơ bản cho các scraper FB "ignore anything on this page, and scrape this url instead"

hơn cho yếu tố liên kết Canonical : http://en.wikipedia.org/wiki/Canonical_link_element

+0

Nó nên được xem xét đầu tiên * nó có ý nghĩa gì * và thứ hai * cách nó được sử dụng *. Opengraph không còn được sử dụng bởi Facebook, và nó là tiêu chuẩn mở. Công cụ tìm kiếm có thể quyết định sử dụng hoặc không sử dụng bất kỳ siêu dữ liệu nào để xử lý các trang web bị hỏng hoặc spam. – kolen

2

Trên một trong các trang web tôi đã phát triển, tôi phân phối trang bằng nhiều ngôn ngữ và cung cấp liên kết đến một llow người dùng để chuyển đổi giữa một ngôn ngữ và khác. Vì vậy, số rel="canonical" của tôi sẽ có URL http://www.example.com/, trong khi, trong mã tôi cập nhật og:url để mã đó là http://en.example.com/ hoặc http://fr.example.com/. Bằng cách đó khi người dùng chia sẻ trang trên Facebook, mọi thứ sẽ xuất hiện trên Facebook bằng ngôn ngữ họ đang xem trang, điều này có ý nghĩa vì hầu hết bạn bè của khách truy cập sẽ có khả năng nói cùng một ngôn ngữ.

Trân trọng.

+2

âm thanh chính xác mục đích url chuẩn nên phục vụ .. hoặc tôi nhầm ở đây? –

+1

Nội dung là duy nhất trên các tên miền phụ ngôn ngữ, vì vậy bạn cũng nên đặt URL chuẩn cho phiên bản ngôn ngữ. Những gì bạn đã làm là nói với công cụ tìm kiếm http://fr.example.com/ có cùng nội dung như http://www.example.com/, nhưng không phải vậy. – BigMeat

0

Tôi không thấy lý do tại sao og: url và chuẩn nên khác nhau. Trong cả hai trường hợp, bạn đang nói đến một trong hai công cụ tìm kiếm hoặc Facebook trang nào bạn muốn lập chỉ mục hoặc được hiển thị.

+0

Nếu bạn chỉ có một vài thuộc tính, bạn chỉ cần thêm các thẻ meta 'og:' cơ bản vào trang của mình, nhưng nếu bạn có nhiều thuộc tính mô tả chi tiết đối tượng Open Graph (ví dụ đối tượng OG của bạn là một địa điểm nơi bạn có thể ăn, uống, khiêu vũ, vv và bạn thiết lập các hành động OG để tương tác với địa điểm đó), thật tuyệt khi có các thẻ đó trên một trang riêng biệt để người dùng của bạn không phải tải xuống chúng - thông tin chỉ hữu ích cho Facebook, sau tất cả. Các trang Biểu đồ mở đặc biệt tải bình thường nếu tác nhân người dùng là "facebookexternalhit" và chuyển hướng đến các trang thực của bạn cho bất kỳ tác nhân người dùng nào khác. – Golphy

+2

Bạn có thể muốn cho phép người dùng chia sẻ kết quả được lọc và được phân trang, nhưng không có công cụ tìm kiếm lập chỉ mục cho họ. Trong trường hợp đó, bạn muốn 'og: url' có dạng' https: //example.com/products? Category = foo & page = 3', nhưng để nguyên 'canonical' chỉ với' https://example.com/products'. – ACJ

0

url hợp quy tham khảo nội dung trang.

Mục tiêu (kinh điển) IRI PHẢI xác định nội dung đó là một trong hai duplicative hoặc một superset của nội dung tại bối cảnh (giới thiệu) IRI. rfc6596#3

Url địa chỉ đề cập đến "đối tượng".

URL chuẩn của đối tượng sẽ được sử dụng làm ID cố định trong biểu đồ, ví dụ: "http://www.imdb.com/title/tt0117500/". ogp.me

Vì vậy, chúng có thể khác nhau. Ví dụ: đối với các trang web đa ngôn ngữ, trang cho mỗi ngôn ngữ phải có url chuẩn riêng biệt, vì nội dung khác nhau, nhưng thường là cùng một og:url cho tất cả ngôn ngữ, vì chúng tham chiếu đến cùng một đối tượng được mô tả bằng nhiều ngôn ngữ.

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