Thêm / vào cuối url hoặc xoá / trên url website

Khi technical SEO cho 1 số website tôi có gặp trường hợp website lỗi không tự đồng nhất url giữ có / ở cuối url hoặc non-slash ở cuối url nên sẽ bị trùng lặp nội dung, trong bài này tôi share nhanh cách để bạn giải quyết vấn đề nếu gặp trường hợp tương tự.

Thêm / vào url hoặc xoá / url trên Litespeed/Apache

Để dễ hình dùng trường hợp này mình sẽ đưa ra ví dụ để bạn hiểu vấn đề.

Ví dụ có 2 url như ở dưới. Bạn sẽ thấy chúng khác nhau mỗi dấu / cuối url, vậy nếu website lỗi thì khi truy cập vào 1 trong 2 url kia đều hiển thi nội dung giống y chang nhau (vì thực chất là 1 bài viết nhưng lại có đến 2 url dẫn đến => trùng lặp nội dung).

Trong Google search console nó cũng sẽ báo cáo là Alternate page with proper canonical tag vì 1 nội dung mà có tới 2 url.

https://vutruso.com/chuyen-huong-spam-search/

https://vutruso.com/chuyen-huong-spam-search

Để giải quyết vấn đề trên thì bạn chọn 1 trong 2 cách là thêm / vào cuối mỗi url hoặc xoá / ở cuối mỗi url.

Nếu bạn sử dụng mã nguồn WordPress có mục Cài đặt > Đường dẫn tĩnh để có thể thêm / hoặc xoá / cuối url, tuy nhiên nhiều website lỗi khi bạn nhập ở này vẫn không thể giải quyết được việc thống nhất việc có / hoặc không có / cuối url.

Để giải quyết vấn đề bạn có thể sử dụng code dưới đây, thêm code cấu trúc bạn muốn vào file .htaccess là được.

bạn có thể xem qua nhé.

Bắt buộc thêm / vào cuối url

Bạn có thể thêm code này vào file .htaccess, bạn thêm ở đầu file nhé, vì thêm ở cuối file sẽ có vấn đề.

# Bat buoc them / vao url de khong trung lap noi dung
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*)$ $1/ [L,R=301]

Xoá / ở cuối url

// Xoa / cuoi url
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/$ /$1 [L,R=301]

Xoá / trên Cloudflare

Nếu bạn sử dụng Cloudflare thì có thể set chuyển hướng xoá / ở cuối url bằng cách vào mục Page rules và tạo 1 rule mới như sau.

URL nhập vào: https://vutruso.com/*/

Destination URL thì nhập vào: https://vutruso.com/$1

Nếu url có chuỗi truy vấn bạn có thể set: https://vutruso.com/*/?* -> https://vutruso.com /$1?$2

Thêm hoặc Xoá / trên máy chủ Nginx

Ngoài ra nếu bạn sử dụng máy chủ Nginx thì có thể add code này vào block né server{}

Nginx đi kèm với mô-đun ngx_http_rewrite_module , cho phép bạn sửa đổi các URI bằng cách sử dụng các biểu thức thông thường. Đó là một công cụ mạnh mẽ có thể được sử dụng cho các tác vụ như chuyển hướng URL hoặc tạo URL thân thiện với người dùng. Để nối thêm dấu gạch chéo ở cuối.

Mở tệp máy chủ ảo Nginx của trang web của bạn. Tùy thuộc vào nền tảng của bạn, phần này sẽ được định vị khác nhau, nhưng trên các bản phân phối dựa trên Debian, nó thường nằm trong /etc/nginx/sites-available/.

Dưới đây là một số ví dụ dành riêng cho nền tảng:

/etc/nginx/sites-available/domain

Block server ví dụ như sau:

server {
    listen 80;
    server_name vutruso.com;

    root /var/www/vutruso.com;
    index index.php;

    location / {
        try_files $uri $uri/ /index.php?$args;
    }

    rewrite ^([^.]*[^/])$ $1/ permanent;

    location ~ \.php$ {
        include fastcgi_params;
        fastcgi_pass unix:/var/run/php/php7.4-fpm.sock; # Adjust this based on your PHP version
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include snippets/fastcgi-php.conf;
    }

    location ~ /\.ht {
        deny all;
    }
}

Thêm / vào url trên Nginx

# Add trailing slash from URLs
rewrite ^([^.]*[^/])$ $1/ permanent;

Xoá / vào url trên Nginx

# Remove trailing slash from URLs
rewrite ^/(.*)/$ /$1 permanent;

Sau khi thêm bạn test Nginx với lệnh sudo nginx -t và reload lại Nginx với lệnh

sudo service nginx reload #debian/ubuntu
systemctl restart nginx #redhat/centos/almalinux

Sau khi cập nhật cấu hình Nginx, bạn nên kiểm tra kỹ xem các chuyển hướng có hoạt động như dự kiến ​​hay không. Khi nói đến việc kiểm tra các quy tắc chuyển hướng, cURL là lệnh hữu ích, bạn sẽ muốn sử dụng các yêu cầu HEAD bằng -I flag, cờ này sẽ trả về tiêu đề HTTP mà không cần tải xuống toàn bộ trang.

Nếu bạn dùng SSH có thể test với lệnh curl -I https://vutruso.com để xem chúng có chuyển đúng yêu cầu hay không.

Kết luận

Lưu ý quan trọng là bạn nên check kỹ cấu trúc technical SEO để đảm bảo rằng các liên kết trong sơ đồ trang HTML và XML của trang web của bạn sử dụng dấu gạch chéo ở cuối để ngăn các chuyển hướng không cần thiết. Việc sử dụng cấu trúc URL chính xác trong nội bộ sẽ đảm bảo rằng người dùng được chuyển hướng đến đúng trang ngay lần đầu tiên mà không phải thực hiện các chuyển hướng bổ sung. Sau khi cải thiện tính nhất quán liên kết của bạn cho SEO, điều cuối cùng bạn muốn là ảnh hưởng tiêu cực đến người dùng truy cập trang web của bạn bằng cách khiến họ nhảy qua các vòng chuyển hướng không cần thiết.

Okay, vậy là xong, hy vọng bài viết sẽ giúp ích được cho những ai đang SEO và gặp vấn đề vè technical.

Xin cảm ơn.

Nếu bạn thấy bài viết có ích hãy sao chép link và chia sẻ bài viết
vutruso

Vũ Trụ Số chuyên cung cấp hosting cho WordPress, dịch vụ thiết kế website, quản trị website cho doanh nghiệp, dịch vụ quảng cáo Google, quảng cáo Facebook, các dịch vụ bảo mật website WordPress, tăng tốc website WordPress

Bài viết liên quan