Tăng doanh thu quảng cáo 50-250% với Ezoic. Đối tác xuất bản được chứng nhận của Google.
Tăng doanh thu quảng cáo 50-250% với Ezoic. Đối tác xuất bản được chứng nhận của Google.
 

Cách tốt nhất để buộc HTTPS và WWW nhưng cho phép localhost là gì?

Cách tốt nhất để buộc HTTPS và WWW nhưng cho phép localhost là gì? [Tiếng Việt]

Tăng doanh thu quảng cáo 50-250% với Ezoic. Đối tác xuất bản được chứng nhận của Google.
Tăng doanh thu quảng cáo 50-250% với Ezoic. Đối tác xuất bản được chứng nhận của Google.
 

HTACCESS buộc HTTPS và WWW nhưng cho phép localhost

Điều quan trọng là buộc HTTPS và WWW vì một số lý do: kiếm được sự tin tưởng của khách truy cập bằng cách hiển thị kết nối an toàn và, nếu bạn đang sử dụng tên miền phụ như www, hãy giữ sự nhất quán với khách truy cập và báo cáo của bạn, trên web giá rẻ của bạn lưu trữ ví dụ.

Nó có thể dễ dàng trở nên phức tạp trong các công cụ báo cáo như Google Search Console để có các chế độ xem khác nhau cho cùng một trang và trang. Một cái có kết nối HTTPS an toàn, một cái không có và một cái có tên miền phụ Web www và cái khác không có, và thậm chí trở thành cơn ác mộng khiến bạn phải thiết lập bộ lọc tên miền phụ Google Analytics để có báo cáo nhất quán.

Thực tế, có một số cách dễ dàng để đảm bảo rằng tất cả khách truy cập sẽ được chuyển hướng đến bảo mật trong phiên bản HTTPS bắt buộc HTTPS của trang web và tên miền phụ Web, mà không ảnh hưởng đến các lượt truy cập và nó cũng có thể được sử dụng để chuyển hướng trang web đến một trang web khác với đơn giản này và Phương pháp tao nhã.

Và, trên hết, và để hoàn thành nó, để đảm bảo rằng tên miền phụ localhost có thể được truy cập mà không cần tên miền phụ Web hoặc chuyển hướng đến HTTPS, và các trang kết thúc bằng dấu gạch chéo sẽ được chuyển hướng đến trang bình thường, để tránh số lượng gấp đôi của các trang giống nhau trong các báo cáo.

Chúng ta hãy loại bỏ tất cả các trang trùng lặp này, điều cuối cùng gây khó khăn cho việc phân tích chính xác các phân tích:

  • http://mywebsite.com/page

  • http://mywebsite.com/page/

  • https://mywebsite.com/page

  • https://mywebsite.com/page/

  • http://www.mywebsite.com/page

  • http://www.mywebsite.com/page/

  • https://www.mywebsite.com/page

  • https://www.mywebsite.com/page/

  • Tất cả điều này sẽ được thực hiện bằng cách cập nhật tệp .htaccess, một tệp ẩn được sử dụng trên các máy chủ Apache, thường được lưu trữ trên thư mục gốc của trang web.

Chuyển hướng trang kết thúc bằng dấu gạch chéo

Để xóa dấu gạch chéo kết thúc khỏi URL kết thúc bằng một trong số chúng và để yêu cầu được chuyển hướng đến trang chuẩn mà không có dấu gạch chéo, chỉ cần khớp URL bắt đầu và kết thúc bằng dấu gạch chéo, đảm bảo rằng đó không phải là thư mục được yêu cầu và chuyển hướng cho toàn bộ URI yêu cầu mà không có dấu gạch chéo kết thúc.

Ngoài ra, chuyển hướng trang đến URL Web an toàn cần chính xác - điều này sẽ giải quyết trực tiếp tất cả các vấn đề tiềm ẩn của bạn, bao gồm dấu gạch chéo kết thúc, yêu cầu không bảo mật hoặc tên miền phụ không phải là Web.

Sau đó, chúng tôi cũng cần một đoạn mã bổ sung để đảm bảo rằng bất kỳ yêu cầu nào đối với thư mục đều kết thúc bằng dấu gạch chéo, vì các thư mục trang web thông thường URL sẽ kết thúc với một trong số chúng.

# Remove trailing slash from non-filepath urls
RewriteCond %{REQUEST_URI} /(.+)/$
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^ https://www.mywebsite.com/%1 [R=301,L]
# Include trailing slash on directory
RewriteCond %{REQUEST_URI} !(.+)/$
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^(.+)$ https://www.mywebsite.com/$1/ [R=301,L]

HTACCESS buộc HTTPS và buộc WWW htaccess

Bây giờ, vấn đề gạch chéo kết thúc đã được giải quyết, hãy tập trung vào HTTPS bị thiếu hoặc tên miền phụ Web bị thiếu có thể xảy ra, với một chuyển hướng htaccess http sang https với lực lượng www.

Cách dễ nhất và phong cách nhất để làm cho nó xảy ra, là để cả hai được xác định trong cùng một điều kiện htaccess.

Điều này được thực hiện dễ dàng bằng cách kết hợp các URL không bắt đầu với tên miền phụ Web hoặc bất kỳ yêu cầu nào không bao gồm HTTPS và chuyển hướng URL chính xác của trang web của chúng tôi, bao gồm cả kết nối an toàn và tên miền phụ Web www.

# HTACCESS force HTTPS and force WWW htaccess 
RewriteCond %{HTTP_HOST} !^www\.(.*)$ [OR,NC]
RewriteCond %{https} off
RewriteRule ^(.*)$ https://www.mywebsite.com/$1 [R=301,L]

Buộc HTTPS và WWW nhưng cho phép localhost

Bây giờ, điều này là tốt, nhưng điều gì xảy ra khi chúng tôi thực sự cố gắng truy cập Trang web của chúng tôi trong chế độ phát triển trên máy chủ cục bộ XAMPP, nhưng tất cả các yêu cầu của chúng tôi để http: // localhost hiện được chuyển hướng đến https://www.mysite.com - phiên bản sản xuất của chúng tôi?

Giải pháp là sử dụng lại đoạn mã trước đó thực thi phiên bản HTTPS và WWW của yêu cầu URL, nhưng bắt đầu bằng cách loại trừ khỏi các yêu cầu kiểm tra được gắn vào localhost hoặc địa chỉ IP cục bộ của chúng tôi, là 127.0.0.1.

Và đó là nó, bây giờ chúng ta có một đoạn mã đẹp sẽ giải quyết tất cả các vấn đề của chúng ta!

# HTACCESS force HTTPS and force WWW htaccess 
RewriteCond %{HTTP_HOST} !^localhost [NC]
RewriteCond %{REMOTE_ADDR} !^127\.0\.0\.1$
RewriteCond %{HTTP_HOST} !^www\.(.*)$ [OR,NC]
RewriteCond %{https} off
RewriteRule ^(.*)$ https://www.mywebsite.com/$1 [R=301,L]

Chuyển hướng HTTP sang HTTPS htaccess, buộc WWW và xóa dấu gạch chéo kết thúc

Toàn bộ đoạn mã dưới đây có thể được sử dụng trong tệp HTACCESS để đạt được tất cả những điều sau đây:

Chuyển hướng HTTP sang HTTPS trong htacces,

Buộc WWW trong htaccess,

Xóa dấu gạch chéo kết thúc trong URL.

Tất nhiên, đừng quên thay đổi URL trang web cho một trang web áp dụng cho bạn.

Nó thậm chí có thể được sử dụng để chuyển hướng trang web đến một trang web khác bằng cách thay đổi URL đích sang trang web lưu trữ web giá rẻ tốt nhất khác của bạn:

#--------------------------------------------------
# Force WWW htaccess : /
#--------------------------------------------------
#### Force HTTPS://WWW and remove trailing / from files ####
## Turn on rewrite engine
RewriteEngine on

# Remove trailing slash from non-filepath urls
RewriteCond %{REQUEST_URI} /(.+)/$
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^ https://www.mywebsite.com/%1 [R=301,L]

# Include trailing slash on directory
RewriteCond %{REQUEST_URI} !(.+)/$
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^(.+)$ https://www.mywebsite.com/$1/ [R=301,L]

# HTACCESS force HTTPS and force WWW htaccess
RewriteCond %{HTTP_HOST} !^localhost [NC]
RewriteCond %{REMOTE_ADDR} !^127\.0\.0\.1$
RewriteCond %{HTTP_HOST} !^www\.(.*)$ [OR,NC]
RewriteCond %{https} off
RewriteRule ^(.*)$ https://www.mywebsite.com/$1 [R=301,L]
Tăng doanh thu quảng cáo 50-250% với Ezoic. Đối tác xuất bản được chứng nhận của Google.
Tăng doanh thu quảng cáo 50-250% với Ezoic. Đối tác xuất bản được chứng nhận của Google.
 

Bài viết tương tự

Tăng doanh thu quảng cáo 50-250% với Ezoic. Đối tác xuất bản được chứng nhận của Google.
Tăng doanh thu quảng cáo 50-250% với Ezoic. Đối tác xuất bản được chứng nhận của Google.
 

Bình luận (0)

Để lại một bình luận

Dữ liệu của bạn - Được mã hóa. Danh tính - Ẩn danh. Tốc độ Internet - Superior.
Dữ liệu của bạn - Được mã hóa. Danh tính - Ẩn danh. Tốc độ Internet - Superior.