NukeViet

https://nukeviet.vn

Những lỗi căn bản trong xây dựng và quản trị website (Phần 2): Điều hướng tên miền sai

Điều hướng tên miền site là vấn đề thường xuyên gặp phải cho dù website của bạn có sử dụng tên miền nào đi chăng nữa, lỗi này thường gặp đến mức các website lớn của các cơ quan nhà nước Xây dựng hàng tỷ đồng cũng có thể gặp phải. Chính vì thế nó được lựa chọn xếp thứ 2 trong loạt bài "Những lỗi căn bản trong xây dựng và quản trị website" mà NukeViet thực hiện nhằm giúp các webmaster khám phá những lỗi căn bản khi xây dựng và vận hành website.
Ảnh chụp Cổng thông tin một cửa quốc gia vnsw.gov.vn tháng 5/2017

Ảnh chụp Cổng thông tin một cửa quốc gia vnsw.gov.vn tháng 5/2017

1. Lỗi cấu hình khiến domain không truy cập được (dạng có hoặc không có www trong tên miền)

Đây là lỗi rất hay gặp, lỗi này ảnh hưởng lớn đến người truy cập vì thói quen có hoặc không gõ phần www.

Ví dụ điển hình cấu hình sai:

TH1: Cổng thông tin một cửa quốc gia của Tổng cục hải quan: https://vnsw.gov.vn

Hiện tượng: Chỉ có thể truy cập nếu nhập gõ chính xác https://vnsw.gov.vn, còn nếu truy cập bằng các địa chỉ thông thường như http://vnsw.gov.vn, http://www.vnsw.gov.vn hay https://www.vnsw.gov.vn đều nhận báo lỗi website không tồn tại.

Nguyên nhân:
Đang tồn tại hai lỗi song song:
1. Lỗi cấu hình cho Bản ghi tên miền
2. Lỗi cấu hình sau khi cài SSL.

Biện pháp khắc phục:
1. bổ sung bản ghi tên miền www hoặc chuyển tiếp tất cả các link có www về dạng không có www
2. Sửa lại phần điều hướng người truy cập http thành https

Ví dụ cho website cấu hình đúng:
Bạn truy cập https://www.nukeviet.vn/vi/egov/tai-ve/thong-bao-phat-hanh-nukeviet-egovernment-1-0-beta-5-13.html
hay https://nukeviet.vn/vi/egov/tai-ve/thong-bao-phat-hanh-nukeviet-egovernment-1-0-beta-5-13.html
hay http://nukeviet.vn/vi/egov/tai-ve/thong-bao-phat-hanh-nukeviet-egovernment-1-0-beta-5-13.html
hay http://www.nukeviet.vn/vi/egov/tai-ve/thong-bao-phat-hanh-nukeviet-egovernment-1-0-beta-5-13.html
cũng sẽ truy cập được nội dung bài viết và hệ thống NukeViet cũng xác định rõ link chính (canonical) là link https://nukeviet.vn/vi/egov/tai-ve/thong-bao-phat-hanh-nukeviet-egovernment-1-0-beta-5-13.html

Khuyến nghị: Nên chọn dạng chuyển tiếp link có www về dạng không có www (thay vì lựa chọn bổ sung bản ghi tên miền) để khách vẫn truy cập được web dù có gõ www hay không, như vậy website sẽ hiển thị thống nhất một dạng, mà vẫn đảm bảo tốt cho SEO. Để hiểu về việc này, bạn xem 2 lỗi bên dưới!

TH2: Cổng thông tin UBND tỉnh Bình Dương, chỉ truy cập được địa chỉ http://www.binhduong.gov.vn, còn khi cập bằng địa chỉ http://binhduong.gov.vn sẽ nhận được thông báo lỗi như ảnh chụp dưới:
 
Ảnh chụp màn hình khi truy cập binhduong.gov.vn
Ảnh chụp màn hình khi truy cập địa chỉ: binhduong.gov.vn

2. Lỗi để tồn tại cả 2 đường link có www và không có www mà không khai báo đâu là link chính thức của website với các máy tìm kiếm!

Lỗi xảy ra khi bạn xử lý việc không truy cập được bằng địa chỉ có www (hoặc không có www) bằng cách thêm cả 2 bản ghi này và cùng trỏ tới website.

Lưu ý rằng nếu để tồn tại cả 2 dạng link (có www và không có www) thì Google sẽ đếm thành 2 bài (bài viết bị trùng nội dung), lượng truy cập cũng sẽ bị phân tán, không tốt cho SEO. Khi đó bạn sẽ cần khai báo thông số link chính (canonical) là 1 dạng duy nhất (Như trường hợp website NukeViet.vn đang sử dụng). Đây chính là dòng có chức năng khai báo điều đó:
<link rel="canonical" href="https://nukeviet.vn/vi/egov/tai-ve/thong-bao-phat-hanh-nukeviet-egovernment-1-0-beta-5-13.html">
Tuy nhiên, không phải hệ thống nào cũng dễ dàng xử lý việc này, nhất là những hệ thống không phải do bạn làm chủ mà lại chưa có tính năng đó (Hiện chỉ có NukeViet và một số ít mã nguồn mở khác hỗ trợ tính năng này). Các mã nguồn web do các đơn vị tự viết, các mã nguồn đóng, các mã nguồn mở sử dụng các phiên bản cũ... hầu như không hỗ trợ.

Ví dụ cho trường hợp này rất dễ gặp trên các website của cơ quan nhà nước, ví dụ là Cổng thông tin UBND Thành phố Hà Nội. Cổng thông tin này sử dụng DotNetNuke, một phần mềm nguồn mở viết bằng ngôn ngữ lập trình ASP.Net, tuy nhiên phiên bản được sử dụng có lẽ là một phiên bản khá cũ (phát hành từ 2011?) cho nên mặc dù tưởng như website có hỗ trợ khai báo URL chính nhưng thực tế mỗi link lại khai báo một URL chính khác nhau (vì thế việc khai báo là vô tác dụng). Cụ thể, địa chỉ: https://thudo.gov.vn/organization_ubnd.aspx thẻ caninical khai báo nó là đường link chính cho bài viết:
<link href="https://thudo.gov.vn/organization_ubnd.aspx" rel="canonical" />
Địa chỉ: https://www.thudo.gov.vn/organization_ubnd.aspx thì thẻ khai báo lại là một đường link khác:
<link href="https://10.1.1.20/organization_ubnd.aspx" rel="canonical" />
Khi đọc các mã này, các máy tìm kiếm như Google sẽ không hiểu nổi cuối cùng đường link nào là đường link chính.
 
Ảnh chụp màn hình giao diện cổng thông tin UBND tp Hà Nội



Ảnh chụp màn hình giao diện trang web tại thời điểm kiểm tra lỗi ngày 30/10/2017

Có một cách xử lý khác hay hơn cách ở trên, đó là redirect địa chỉ có www về dạng không có www. Ví dụ, truy cập: https://www.vinades.vn bạn sẽ được trình duyệt tự động đưa về địa chỉ https://vinades.vn. Cách làm này có một lưu ý là bạn cần redirect tất cả các đường link chứ không chỉ riêng đối với trang chủ (nếu không sẽ gặp lỗi như ở mục 3), ví dụ như link bài viết trên website vinades.vn sau đây:
https://www.vinades.vn/vi/news/thong-cao-bao-chi/nukeviet-bat-ngo-tung-ra-phien-ban-phan-mem-cong-thong-tin-cho-co-quan-nha-nuoc-365.html
sẽ được đẩy về địa chỉ https://vinades.vn/vi/news/thong-cao-bao-chi/nukeviet-bat-ngo-tung-ra-phien-ban-phan-mem-cong-thong-tin-cho-co-quan-nha-nuoc-365.html

  3. Lỗi chỉ redirect domain chính mà không redirect tất cả các đường link

Lỗi này xảy ra khi website đang sử dụng 2 đường link dạng có www và không có www cố gắng trỏ về 1 đường link (ví dụ dạng không có www chẳng hạn). Tuy nhiên vì việc redirect chỉ xử lý với duy nhất tên miền chính (ví dụ www.domain.com) mà không xử lý cho các đường link dạng www.domain.com/*) cho nên khi truy cập các đường link này (từ các website khác hoặc từ tìm kiếm google) thì hệ thống sẽ báo lỗi!

Điển hình của trường hợp này là cổng thông tin của UBND Thành phố Hải Phòng. Khi bạn tìm kiếm Google với từ khóa "Sở tư pháp Thành phố Hải Phòng" sẽ thấy kết quả là địa chỉ http://haiphong.gov.vn/sotuphap/ (Xem ảnh dưới)
 
Ảnh chụp màn hình tìm kiếm bằng google
Ảnh chụp màn hình tìm kiếm bằng google

Tuy nhiên khi truy cập link này sẽ bị trỏ về địa chỉ khác (xem ảnh chụp dưới đây)
Ảnh chụp màn hình website Sở tư pháp Hải Phòng
Ảnh chụp màn hình website Sở tư pháp Hải Phòng ngày 20/10/2017

Và nếu truy cập một bài viết, sau đó xóa phần www trên địa chỉ website thì sẽ không truy cập được tới trang web của Sở Tư Pháp Hải Phòng nữa. Cụ thể, link tới bài viết bình thường: http://www.haiphong.gov.vn/Portal/Detail.aspx?Organization=STP&MenuID=4287&ContentID=126438
nhưng link này (xóa www đi): http://haiphong.gov.vn/Portal/Detail.aspx?Organization=STP&MenuID=4287&ContentID=126438
sẽ chuyển hướng đi tới địa chỉ: http://haiphong.gov.vn

Bình luận: Lỗi về chuyển tiếp URL ở website của UBND Thành phố Hải Phòng chỉ xảy ra trong điều kiện thử nhiệm, không xảy ra trên tình huống thực do Google không index các địa chỉ URL không có www như thử nghiệm ở trên! Tuy nhiên việc redirect đường link của site này quá phức tạp như trên sẽ khiến người dùng rất bối rối. Các website cần đặc biệt tránh việc này!

Qua vài ví dụ ở trên có thể thấy rất nhiều những website, cổng thông tin lớn bị lỗi căn bản này. Nếu bạn phát hiện ra bất cứ website nào bị lỗi, hãy để lại địa chỉ web ở phần bình luận nhé!