Dấu gạch chéo có thích hợp trước các tham số URL không?


9

tôi hiểu điều đó

http://www.example.com/product

http://www.example.com/product/

thực sự có thể được xem là 2 URL khác nhau và có thể tránh được tốt nhất cho mục đích SEO, nhưng điều này ảnh hưởng đến các tham số chuỗi truy vấn như thế nào. Cái nào tốt hơn (hoặc thậm chí là 'hợp pháp')?

http://www.example.com/product?source=googleps

hoặc là

http://www.example.com/product/?source=googleps

Bạn có cần dấu gạch chéo trước ?


Câu hỏi liên quan về Stack Overflow: Trailing slash trước chuỗi truy vấn. Thực hành xấu?
unor

1
"Thực sự có thể được xem là 2 URL khác nhau" - Chúng 2 URL khác nhau, do đó, nó có thể hoàn toàn phụ thuộc vào cấu hình của bạn cho dù bạn có cần chỉ định dấu gạch chéo hay không.
MrWhite

Câu trả lời:


8

Tất cả bốn URL của bạn đều khác nhau đối với SEO:

  • http://www.example.com/product
  • http://www.example.com/product/
  • http://www.example.com/product?source=googleps
  • http://www.example.com/product/?source=googleps

Không quan trọng bạn sử dụng một trong bốn cái đó, nhưng bạn phải chọn một và sử dụng nó một cách nhất quán. Cả dấu gạch chéo và tham số tạo URL mới cho công cụ tìm kiếm. Việc phục vụ cùng một nội dung với các URL khác nhau có thể khiến trình thu thập công cụ tìm kiếm thực hiện thêm công việc và không thu thập dữ liệu, lập chỉ mục và xếp hạng trang web của bạn một cách hiệu quả.

Bạn có thể sử dụng một số công cụ để chống lại điều này:

  1. Chuyển hướng tất cả các URL trùng lặp sang URL "chuẩn" ưa thích của bạn.
  2. Sử dụng thẻ meta canon canon link để báo cho các công cụ tìm kiếm sử dụng cái nào.
  3. Sử dụng cài đặt "tham số URL" trong Công cụ quản trị trang web của Google để thông báo cho Google rằng tham số "nguồn" không thay đổi nội dung trang (nó chỉ được sử dụng để theo dõi).

Cả hai phiên bản URL của bạn với các tham số là "hợp pháp". Dấu gạch chéo có thể ở đó nếu bạn chọn hoặc bạn có thể bỏ qua nó. Sử dụng bất cứ điều gì dễ dàng hơn cho bạn để cấu hình trên máy chủ của bạn và sử dụng sự lựa chọn của bạn một cách nhất quán.


Cảm ơn Stephen đã chỉnh sửa và câu trả lời thích hợp nhất. Trong khi tôi chọn yếu tố SEO, đó là tính hợp pháp của URL.
Xe jeep

1

Về SEO, tôi sẽ không nghĩ đó là một vấn đề, vì Google có đủ ý thức chung để nhận ra rằng, nếu hai URL bạn đã hiển thị trả lại cùng một nội dung, thì đối với tất cả các mục đích thực tế, các URL đều giống nhau đối với con người.

Trong thực tế, một số quản trị viên / nhà phát triển web sẽ viết các quy tắc viết lại ngắn gọn để chắp thêm hoặc xóa dấu gạch chéo vì "nó trông đẹp hơn".
Các bản ghi lại này có thể là các chuyển hướng máy chủ HTTP nội bộ (không thể hiển thị cho các tác nhân người dùng bên ngoài) và để Google "mong đợi" các quản trị web mã hóa một chuyển hướng chuyên dụng và giao tiếp khứ hồi tương ứng giữa máy chủ và tác nhân người dùng "thông báo" chuyển hướng (và do đó, một URL chính tắc) - ví dụ: phản hồi HTTP với 30xvà "Vị trí: [URL cũ ngoại trừ dấu gạch chéo trên đó]" - và trừng phạt những người không - không có ý nghĩa nhiều.
Tuy nhiên tôi không làm việc cho Google vì vậy tôi không thể nói chắc chắn - cá nhân tôi chỉ bận tâm với nó và bạn luôn có thể chỉ định URL chính tắc bằng cách sử dụng thẻ canon "rel".

Nếu các URL bị lệch nữa và vẫn trả lại cùng một nội dung , ví dụ:

  • http://www.example.com/product.html
  • http://example.com/product/

Sau đó, tôi sẽ dọn sạch chúng và chỉ định URL chuẩn.

Theo kinh nghiệm của tôi - với PHP - nếu chuỗi truy vấn REQUEST_URI (phần địa chỉ theo sau HTTP_HOSTchứa REQUEST_URIQUERY_STRING) có dấu gạch chéo hay không - PHP dường như không quan tâm - dấu gạch chéo sẽ được ghi lại trong $_SERVER['REQUEST_URI']khóa mảng và chuỗi truy vấn trong $_SERVER['QUERY_STRING']Chìa khóa


"nếu chuỗi truy vấn có dấu gạch chéo hay không" - trong ví dụ đó là đường dẫn URL có dấu gạch chéo, không phải chuỗi truy vấn và điều này thực sự phụ thuộc vào máy chủ, thay vì PHP, có giải quyết được hay không (mặc dù điều đó có thể phụ thuộc nếu URL được viết lại).
MrWhite

có, nếu máy chủ web và trình quản lý quy trình CGI, với tư cách là người HTTPxử lý yêu cầu ngược dòng , không coi yêu cầu là hợp lệ hoặc không chuyển các thông số như mong đợi vì /sau đó, có phản hồi từ PHP hoặc bất kỳ máy chủ nào nền tảng bên bạn đang chạy - có thể không liên quan. Nhưng để thực hiện thành công yêu cầu, tất cả các thành phần trong ngăn xếp web phải xử lý đúng cách
the_velour_fog 15/05/2015
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.