Công cụ tạo quy tắc chuyển hướng

Chuyển đổi các ánh xạ CSV nguồn và đích thành các quy tắc 301 hoặc 302 cho Nginx, Apache và Vercel.

Tùy chọn chuyển hướng

Mã trạng thái

Quy tắc đã tạo

Sẵn sàng. Hãy nhập tệp CSV ánh xạ nguồn và đích.

Tệp CSV và các quy tắc được tạo của bạn được lưu giữ trong trình duyệt. Không có dữ liệu nào được tải lên BroBroGo.

Hỏi đáp

Tôi nên định dạng tệp CSV như thế nào?

Sử dụng một hàng tiêu đề có các cột "source" và "target". Từ "destination" cũng có thể được dùng thay cho "target". Mỗi hàng tiếp theo có thể sử dụng một URL nguồn HTTP hoặc HTTPS đầy đủ hoặc một đường dẫn bắt đầu bằng dấu /, cùng với một đích đến đầy đủ hoặc tương đối so với gốc.

Các chuyển hướng được tạo ra có phải là khớp chính xác không?

Có. Đầu ra cho Nginx và Apache được neo vào chính xác đường dẫn nguồn, và Vercel cũng nhận được đường dẫn chính xác tương tự. Tên máy chủ nguồn sẽ bị loại bỏ; các chuỗi truy vấn nguồn, phân đoạn neo và các mẫu kiểu ký tự đại diện (wildcard) bị từ chối vì ba môi trường này xử lý chúng khác nhau.

Tại sao đầu ra của Vercel lại sử dụng statusCode?

Chuyển hướng vĩnh viễn của Vercel tạo ra mã 308 và chuyển hướng tạm thời tạo ra mã 307. Thuộc tính statusCode được sử dụng để lựa chọn của bạn giữ nguyên chính xác là 301 hoặc 302. Các triển khai Vercel tiêu chuẩn cho phép tổng cộng 2.048 tuyến đường, vì vậy công cụ này chấp nhận tối đa 2.000 ánh xạ.

Vai trò của chuyển hướng trong di chuyển website và SEO

Khi thực hiện di chuyển website, tái cấu trúc cấu trúc URL hoặc dọn dẹp các nội dung cũ, việc thiết lập các quy tắc chuyển hướng chính xác là vô cùng quan trọng để duy trì thứ hạng SEO và trải nghiệm người dùng. Nếu không có các quy tắc chuyển hướng phù hợp, người dùng và các công cụ tìm kiếm sẽ gặp lỗi khi truy cập vào các liên kết cũ, dẫn đến việc mất lưu lượng truy cập và giảm uy tín của trang web trên các công cụ tìm kiếm.

Việc lựa chọn giữa mã trạng thái 301 Vĩnh viễn (Vĩnh viễn) và 302 Tạm thời (Tạm thời) quyết định cách các công cụ tìm kiếm xử lý giá trị liên kết (link juice). Chuyển hướng 301 truyền đạt tín hiệu rằng URL cũ đã được thay thế vĩnh viễn bằng URL mới, giúp chuyển giao phần lớn sức mạnh SEO sang địa chỉ mới. Trong khi đó, chuyển hướng 302 thông báo rằng sự thay đổi này chỉ mang tính chất tạm thời, và các công cụ tìm kiếm nên tiếp tục lập chỉ mục URL gốc.

Định dạng tệp CSV để nhập dữ liệu

Để sử dụng công cụ, bạn cần chuẩn bị một tệp CSV chứa danh sách các đường dẫn cần chuyển hướng. Tệp CSV này phải tuân thủ các quy tắc định dạng nghiêm ngặt sau:

  • Cấu trúc cột: Hàng đầu tiên (hàng tiêu đề) bắt buộc phải chứa các cột sourcetarget (hoặc có thể sử dụng destination thay cho target). Nếu không đáp ứng, hệ thống sẽ báo lỗi: "Hàng tiêu đề cần có các cột "source" và "target" (hoặc "destination").".
  • Định dạng URL nguồn: Phải là một URL HTTP hoặc HTTPS đầy đủ, hoặc một đường dẫn bắt đầu bằng dấu /. Tên máy chủ nguồn (hostname) nếu có sẽ tự động bị loại bỏ trong quá trình xử lý.
  • Định dạng URL đích: Có thể là một URL HTTP hoặc HTTPS đầy đủ, hoặc một đường dẫn tương đối so với gốc.
  • Giới hạn kích thước: Tệp CSV tải lên phải có dung lượng dưới 5 MB. Nếu vượt quá, hệ thống sẽ hiển thị lỗi: "Tệp CSV này quá lớn. Vui lòng chọn tệp dưới {max}.".
  • Giới hạn số lượng: Công cụ hỗ trợ xử lý tối đa 2.000 ánh xạ chuyển hướng trong một lần thực hiện. Nếu vượt quá giới hạn này, lỗi "Công cụ này chỉ chấp nhận tối đa {max} ánh xạ cùng một lúc." sẽ xuất hiện.

Cú pháp quy tắc chuyển hướng cho Nginx, Apache và Vercel

Mỗi môi trường máy chủ có cách xử lý và cú pháp cấu hình chuyển hướng riêng biệt. Công cụ này hỗ trợ tạo mã cấu hình chuẩn xác cho ba môi trường phổ biến:

Nginx

Đối với máy chủ Nginx, các quy tắc được tạo ra dưới dạng các chỉ thị cấu hình chính xác, neo vào đúng đường dẫn nguồn để đảm bảo không khớp sai lệch. Cú pháp sử dụng các khối lệnh điều hướng của Nginx để chuyển hướng người dùng đến đích đến mới với mã trạng thái 301 hoặc 302 tương ứng.

Apache

Đối với máy chủ Apache, công cụ tạo ra các chỉ thị tương thích với tệp .htaccess. Các quy tắc này sử dụng mô-đun mod_alias hoặc mod_rewrite để khớp chính xác đường dẫn nguồn và chuyển hướng đến URL đích. Đầu ra được neo chính xác để tránh việc khớp các đường dẫn con không mong muốn.

Vercel

Cấu hình chuyển hướng của Vercel được định nghĩa trong tệp vercel.json. Điểm đặc biệt của Vercel là các thuộc tính chuyển hướng mặc định của nền tảng này (permanent hoặc temporary) sẽ tự động tạo ra mã trạng thái 308 (đối với vĩnh viễn) và 307 (đối với tạm thời). Để đảm bảo giữ nguyên chính xác mã trạng thái 301 hoặc 302 theo lựa chọn của bạn, công cụ sử dụng thuộc tính statusCode trong cấu hình đầu ra.

Các ràng buộc kỹ thuật và xử lý lỗi

Để đảm bảo các quy tắc hoạt động ổn định và không gây ra vòng lặp chuyển hướng vô hạn hoặc lỗi máy chủ, công cụ áp dụng các quy tắc kiểm tra nghiêm ngặt sau:

  • Khớp chính xác: Tất cả các quy tắc được tạo ra đều là khớp chính xác (exact match). Công cụ không chấp nhận các ký tự đại diện hoặc ký tự mẫu tuyến đường. Nếu phát hiện, hệ thống sẽ báo lỗi: "Hàng {line} sử dụng ký tự đại diện hoặc ký tự mẫu tuyến đường. Công cụ này chỉ chấp nhận các đường dẫn nguồn chính xác.".
  • Không chứa chuỗi truy vấn hoặc phân đoạn neo: Đường dẫn nguồn không được chứa dấu hỏi chấm ? (query string) hoặc dấu thăng # (fragment). Nếu vi phạm, lỗi sau sẽ hiển thị: "Hàng {line} bao gồm một chuỗi truy vấn hoặc phân đoạn neo trong nguồn. Chỉ sử dụng đường dẫn nguồn.".
  • Giới hạn độ dài URL: Bất kỳ URL nào ở nguồn hoặc đích có độ dài vượt quá 2.048 ký tự sẽ bị từ chối với lỗi: "Một URL ở hàng {line} dài hơn 2.048 ký tự.".
  • Tránh trùng lặp nguồn: Mỗi đường dẫn nguồn chỉ được xuất hiện duy nhất một lần trong tệp CSV. Nếu phát hiện trùng lặp, hệ thống báo lỗi: "Hàng {line} lặp lại đường dẫn nguồn {source}. Mỗi nguồn chỉ được xuất hiện một lần.".

Bảo mật dữ liệu và xử lý cục bộ

Khi sử dụng công cụ này, toàn bộ quá trình xử lý tệp CSV và tạo quy tắc chuyển hướng đều diễn ra trực tiếp bên trong trình duyệt web của bạn. Không có bất kỳ dữ liệu nào được tải lên máy chủ của BroBroGo. Điều này đảm bảo thông tin cấu trúc liên kết nội bộ và dữ liệu di chuyển trang web của bạn được lưu giữ cục bộ trên thiết bị cá nhân.

Câu hỏi thường gặp

Tôi nên định dạng tệp CSV như thế nào? Sử dụng một hàng tiêu đề có các cột "source" và "target". Từ "destination" cũng có thể được dùng thay cho "target". Mỗi hàng tiếp theo có thể sử dụng một URL nguồn HTTP hoặc HTTPS đầy đủ hoặc một đường dẫn bắt đầu bằng dấu /, cùng với một đích đến đầy đủ hoặc tương đối so với gốc.

Các chuyển hướng được tạo ra có phải là khớp chính xác không? Có. Đầu ra cho Nginx và Apache được neo vào chính xác đường dẫn nguồn, và Vercel cũng nhận được đường dẫn chính xác tương tự. Tên máy chủ nguồn sẽ bị loại bỏ; các chuỗi truy vấn nguồn, phân đoạn neo và các mẫu kiểu ký tự đại diện (wildcard) bị từ chối vì ba môi trường này xử lý chúng khác nhau.

Tại sao đầu ra của Vercel lại sử dụng statusCode? Chuyển hướng vĩnh viễn của Vercel tạo ra mã 308 và chuyển hướng tạm thời tạo ra mã 307. Thuộc tính statusCode được sử dụng để lựa chọn của bạn giữ nguyên chính xác là 301 hoặc 302. Các triển khai Vercel tiêu chuẩn cho phép tổng cộng 2.048 tuyến đường, vì vậy công cụ này chấp nhận tối đa 2.000 ánh xạ.

Công cụ này có giới hạn số lượng dòng trong tệp CSV không? Có, công cụ chấp nhận tối đa 2.000 ánh xạ chuyển hướng trong một tệp CSV và dung lượng tệp phải dưới 5 MB để đảm bảo hiệu suất xử lý trong trình duyệt.