- Tham gia
- 28/02/2015
- Bài viết
- 16,410
- Được Like
- 12,632
Bắt buộc https (SSL) sử dụng .htaccess và mod_rewrite cho XenForo
Như chúng ta đã biết, Google đã thông báo rằng HTTPS - thêm một chứng chỉ khóa SSL 2048-bit trên trang web của bạn - sẽ cung cấp cho bạn một tăng hạng nhẹ. Và bây giờ, Brivium sẽ cho bạn biết làm thế nào để bắt buộc https sử dụng .htaccess và mod_rewrite cho XenForo mà chúng tôi cài đặt trên trang web chính thức của chúng tôi. Bắt buộc https và tạo điều kiện cho nó trên trang web XenForo của bạn sẽ cho phép đăng nhập với giao thức an toàn "https" thay vì tiêu chuẩn "http" trước đó.
Mẹo này giả định rằng bạn đã cài đặt SSL trên máy chủ lưu trữ của bạn. Nếu không, trước tiên bạn phải mua một Secure Socket Layer (SSL) từ nhà cung cấp hosting Web của bạn hoặc đại lý bán lẻ giấy chứng nhận khác. Trong khi giao thức mã hóa SSL không đảm bảo các trang web riêng của mình, vì nó mã hóa traffic đến và đi từ máy chủ nó có thể ngăn chặn việc nghe trộm và bảo vệ dữ liệu nhạy cảm. Sau đó, nó đặc biệt quan trọng để có SSL trong XenForo của bạn để đảm bảo nội dung bảo mật, mật khẩu và tất cả những dữ liệu an toàn. Thích hợp sử dụng giấy chứng nhận SSL sẽ giúp bạn đạt được sự tin tưởng của khách hàng và bán được nhiều.
Trước hết, bạn cần phải thay đổi tùy chọn URL board của bạn trong trang web XenForo. Đến Admin CP > Options > Basic Board Information và thiết lập Board URL & Home Page URL https://yourdomain thay vì http://yourdomain.
Điều này sẽ bắt buộc SSL cho toàn bộ trang web của bạn, cả AdminCP và front end. Nếu bạn không sử dụng SSL cho tên miền của bạn, bạn sẽ ngay lập tức nhận được một lỗi khi lưu.
Xin lưu ý: Bước trên cho phép bạn cấu hình SSL, nhưng nếu một người truy cập vào một trang XenForo bằng non-HTTPS (nghĩa là URL "cũ"), thì khách này không tự động chuyển hướng.
Tiếp theo, mở tập tin .htaccess trên thư mục gốc cài đặt Xenforo của bạn, sau đó thêm đoạn mã sau vào dưới cùng của file và bắt buộc HTTPS trên tất cả các trang.
Nếu bạn muốn bắt buộc https chỉ trên một số trang, bạn có thể thử
Nếu bạn muốn thêm ngoại lệ cho bắt buộc https trên một số trang, bạn có thể thử
Cuối cùng, các bạn sẽ có file .htaccess như sau:
Chúc các bạn thành công.
Như chúng ta đã biết, Google đã thông báo rằng HTTPS - thêm một chứng chỉ khóa SSL 2048-bit trên trang web của bạn - sẽ cung cấp cho bạn một tăng hạng nhẹ. Và bây giờ, Brivium sẽ cho bạn biết làm thế nào để bắt buộc https sử dụng .htaccess và mod_rewrite cho XenForo mà chúng tôi cài đặt trên trang web chính thức của chúng tôi. Bắt buộc https và tạo điều kiện cho nó trên trang web XenForo của bạn sẽ cho phép đăng nhập với giao thức an toàn "https" thay vì tiêu chuẩn "http" trước đó.
Trước hết, bạn cần phải thay đổi tùy chọn URL board của bạn trong trang web XenForo. Đến Admin CP > Options > Basic Board Information và thiết lập Board URL & Home Page URL https://yourdomain thay vì http://yourdomain.
Điều này sẽ bắt buộc SSL cho toàn bộ trang web của bạn, cả AdminCP và front end. Nếu bạn không sử dụng SSL cho tên miền của bạn, bạn sẽ ngay lập tức nhận được một lỗi khi lưu.
Xin lưu ý: Bước trên cho phép bạn cấu hình SSL, nhưng nếu một người truy cập vào một trang XenForo bằng non-HTTPS (nghĩa là URL "cũ"), thì khách này không tự động chuyển hướng.
Tiếp theo, mở tập tin .htaccess trên thư mục gốc cài đặt Xenforo của bạn, sau đó thêm đoạn mã sau vào dưới cùng của file và bắt buộc HTTPS trên tất cả các trang.
Mã:
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{SERVER_NAME}%{REQUEST_URI} [R=301]
Nếu bạn muốn bắt buộc https chỉ trên một số trang, bạn có thể thử
Mã:
RewriteCond %{HTTPS} off
RewriteCond %{QUERY_STRING} (^register$|^login$)
RewriteRule ^/?(.*) https://%{SERVER_NAME}%{REQUEST_URI} [R=301]
Nếu bạn muốn thêm ngoại lệ cho bắt buộc https trên một số trang, bạn có thể thử
Mã:
RewriteCond %{HTTPS} off
RewriteCond %{QUERY_STRING} !(^forums$|^threads$)
RewriteRule ^/?(.*) https://%{SERVER_NAME}%{REQUEST_URI} [R=301]
Cuối cùng, các bạn sẽ có file .htaccess như sau:
Mã:
ErrorDocument 401 default
ErrorDocument 403 default
ErrorDocument 404 default
ErrorDocument 500 default
<IfModule mod_rewrite.c>
RewriteEngine On
# If you are having problems with the rewrite rules, remove the "#" from the
# line that begins "RewriteBase" below. You will also have to change the path
# of the rewrite to reflect the path to your XenForo installation.
#RewriteBase /xenforo
# This line may be needed to enable WebDAV editing with PHP as a CGI.
#RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^(data/|js/|styles/|install/|favicon\.ico|crossdomain\.xml|robots\.txt) - [NC,L]
RewriteRule ^.*$ index.php [NC,L]
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{SERVER_NAME}%{REQUEST_URI} [R=301]
</IfModule>
Chúc các bạn thành công.
Nguồn: xenforo.rocks
Bài viết liên quan
Bài viết mới