CHIA SẺ:

Có rất nhiều cách để buộc Nginx sử dụng đường dẫn dạng non-www hoặc www. Mình xin giới thiệu một cách đơn giản như sau:

Redirect non-WWW sang WWW

Sửa file cấu hình của nginx (nginx.conf) hoặc nếu dùng HocVPS Script thì bạn hãy sửa file cấu hình cho từng domain trong folder /etc/nginx/conf.d/

Single domain

server {
        server_name example.com;
        return 301 $scheme://www.example.com$request_uri;
}

All domains

server {
        server_name "~^(?!www\.).*" ;
        return 301 $scheme://www.$host$request_uri;
}

Từ WWW sang non-WWW

Single domain

server {
        server_name www.example.com;
        return 301 $scheme://example.com$request_uri;
}

All domains

server {
         server_name "~^www\.(.*)$" ;
         return 301 $scheme://$1$request_uri ;
}

Ngoài ra, có một số plugin WordPress có thể xử lý việc redirect này ở mức PHP-level, nhưng để có performance tốt nhất, các bạn nên để cho Nginx tự xử.

62 Comments

  1. Nghĩa 2

    Chào Luân

    Xin phép cho mình hỏi là mình đã up code lên vps, kết nối database … rồi

    Site đã chạy ( Fontsun.com ) nhưng cứ bị lỗi ERR_INCOMPLETE_CHUNKED_ENCODING

    đây là linh ảnh báo lỗi http://www.upsieutoc.com/image/bN67G

    Bạn xem có cách nào tìm giúp mình nguyên nhân và cách khắc phục với nhé, cảm ơn cậu nhiều !

    1. Việt Phương Moderator

      Gửi mình file cấu hình Nginx của domain mình xem cho. Chủ yếu cần thêm đoạn rewrite ^(.*) https://www.domain.com$1 permanent;

Comment của bạn

Your email address will not be published. Required fields are marked *