Hướng dẫn Cách thực hiện SSL để bảo mật HTTP Traffic (HTTPS)

PVS

Super Moderator
Thành viên BQT
Tham gia
28/02/2015
Bài viết
16,688
Được Like
12,676
Cách thực hiện SSL để bảo mật HTTP Traffic (HTTPS)

Hướng dẫn này hy vọng sẽ giải thích tất cả các bước cần thiết để chuyển đổi cài đặt XF từ sử dụng HTTP sang HTTPS.
Ví dụ: thay vì URL của trang web là http://vnxf.vn/, nó sẽ là https://vnxf.vn/.

HTTPS là gì?
Về cơ bản, HTTPS là một phiên bản an toàn của HTTP và mặc dù nó không nhất thiết là cần thiết cho các diễn đàn, nhưng có một sự thúc đẩy chung hướng tới nó do tăng cường bảo mật và Google giờ đây sử dụng HTTPS làm dấu hiệu để xếp hạng, và nó tương đối đơn giản và rẻ (thậm chí miễn phí) để thực hiện.

Thông tin chi tiết và đọc hiểu có sẵn tại các liên kết này:
Cách thực hiện nó?
Đây là một quá trình hai giai đoạn.
Máy chủ cần phải được định cấu hình để hỗ trợ HTTPS và phục vụ cho trang đó, và cài đặt XF cần được cập nhật để đảm bảo nó tuân thủ.

Cấu hình máy chủ
Bước đầu tiên là cài đặt một chứng chỉ trên máy chủ.

Cài đặt chứng chỉ
Có một số cách để đạt được nó, với mức chi phí khác nhau. Bạn có thể:
  • mua một chứng chỉ (chi phí khác nhau)
  • sử dụng một chứng chỉ miễn phí từ một nơi nào đó như Let's Encrypt - Free SSL/TLS Certificates (có nhiều nhà cung cấp khác nhau)
  • sử dụng một chứng chỉ được cung cấp bởi máy chủ của bạn (nếu có)
  • sử dụng một chứng chỉ được cung cấp bởi một dịch vụ như Cloudflare (nếu có)
Hướng dẫn này sẽ không đi sâu vào bất kỳ chi tiết nào liên quan đến việc cài đặt chứng chỉ vì việc triển khai cụ thể thay đổi tùy theo hoàn cảnh của bạn.
Nếu bạn không chắc chắn, hãy liên hệ với quản trị viên hệ thống hoặc máy chủ của bạn, hoặc đăng lên chủ đề liên quan đến tài nguyên này và có thể được cung cấp bởi cộng đồng hỗ trợ.

Buộc HTTPS
Khi chứng chỉ đã được cài đặt, bước tiếp theo là bắt buộc sử dụng HTTPS, vì vậy nếu bất kỳ khách truy cập điều hướng đến bất kỳ URL nào bằng HTTP, chúng sẽ được chuyển tiếp đến HTTPS tương đương.
Nếu bạn đang ở trên một máy chủ Apache, có thể đạt được bằng cách thêm vào tập tin .htaccess:
Mã:
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Tùy thuộc vào máy chủ và cấu hình chính xác, một biến thể của nó có thể được required/preferred.
Lưu ý rằng bất kỳ quy tắc viết lại tùy chỉnh nào phải đến trước khi quy tắc viết lại XenForo.

Một tiêu chuẩn .htaccess với những dòng được thêm sẽ trông như thế này:
Mã:
#    Mod_security can interfere with uploading of content such as attachments. If you
#    cannot attach files, remove the "#" from the lines below.
#<IfModule mod_security.c>
#    SecFilterEngine Off
#    SecFilterScanPOST Off
#</IfModule>

ErrorDocument 401 default
ErrorDocument 403 default
ErrorDocument 404 default
ErrorDocument 405 default
ErrorDocument 406 default
ErrorDocument 500 default
ErrorDocument 501 default
ErrorDocument 503 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 %{HTTPS} off
    RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

    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]
</IfModule>

Một lần nữa, điều này khác dựa trên máy chủ web, do đó nó là một cái gì đó bạn sẽ cần phải nhìn vào dựa trên hoàn cảnh cụ thể của bạn.

Đôi khi, máy chủ không thể tự động thiết lập HTTPS. Bạn có thể kiểm tra xem nó bằng cách điều hướng đến /admin.php?tools/phpinfo và tìm kiếm mục này dưới phần PHP Variables:

server_https.png

Nếu nó không báo 'on', thì nó có thể được đặt bằng cách thêm vào cuối tập tin library/config.php:
Mã:
$_SERVER['HTTPS'] = 'on';

Như thế này:
Mã:
<?php

$config['db']['host'] = 'localhost';
$config['db']['port'] = '3306';
$config['db']['username'] = '';
$config['db']['password'] = '';
$config['db']['dbname'] = '';

$config['superAdmins'] = '1';

$_SERVER['HTTPS'] = 'on';

Các bước khác liên quan đến những thay đổi cần được thực hiện trong cài đặt XF và các nơi khác.


Cấu hình cài đặt XF
Có một số hành động phải được thực hiện và những thay đổi phải được thực hiện, nhưng nó sẽ phụ thuộc vào một số phạm vi về việc cài đặt và cách diễn đàn được sử dụng. Nếu sau khi thực hiện tất cả các thay đổi cần thiết, trang web không xuất hiện an toàn, hãy sử dụng trình duyệt thanh tra để kiểm tra xem nội dung nào đang được tải qua HTTP. Thông thường, thanh tra trình duyệt có thể truy cập bằng cách nhấn F12 và sau đó nhấp vào tab [Console].

Boar URL:
Board URL là một thay đổi phải được thực hiện cho tất cả các cài đặt.
Điều đó được thay đổi trong ACP -> Options -> Basic Board Information: Board URL.
Chỉ cần thay đổi URL hiện tại sang HTTPS tương đương, ví dụ: từ http://mysite thành https://mysite..
Tương tự với bất kỳ URL nào khác trên trang đó: URL trang chủ nếu được thiết lập, URL chính sách bảo mật, URL điều khoản và quy tắc và URL liên hệ, nếu URL tùy chỉnh đã được thiết lập.

Image Proxy
Nếu được phép nhúng hình ảnh từ các máy chủ từ xa trong bài đăng, thì phải bật Image Proxy.
Nếu không, cảnh báo nội dung hỗn hợp sẽ được tạo ra khi tải trang có hình ảnh được nhúng từ URL không phải là HTTPS.
Nó có thể được kích hoạt trong ACP -> Options -> Messages -> Image and Link Proxy: Proxy Images.
Thông tin thêm về tính năng này có tại đây: XF 1.3 - EXIF Rotation, ACP Searching, Proxying and Change Logging

Lưu ý rằng không có nhu cầu cụ thể để kích hoạt liên kết proxy, như HTTPS là liên quan, như các liên kết không phải là cách nhúng nội dung trong cùng một hình ảnh.

Media Sites
Nội dung nhúng khác có thể cần phải thay đổi liên quan đến các trang media, chẳng hạn như các video nhúng từ YouTube, Vimeo, Facebook, v.v ...
Những điều này được xác định trong ACP -> BB Code Media Sites.

Trong số các trang web media mặc định đi kèm với XF như: Dailymotion, Facebook, LiveLeak, Vimeo và YouTube là HTTPS và do đó có thể được nhúng.
Phiên bản mới nhất của mã nhúng cho các trang web này là như sau:
Dailymotion
Mã:
<iframe frameborder="0" width="500" height="300" src="https://www.dailymotion.com/embed/video/{$id}?width=500&hideInfos=1"></iframe>


Facebook
Mã:
<div class="fb-video" data-href="https://www.facebook.com/video.php?v={$id}" data-width="500"><div class="fb-xfbml-parse-ignore"><a href="https://www.facebook.com/video.php?v={$id}">https://www.facebook.com/video.php?v={$id}</a></div></div>


LiveLeak
Mã:
<iframe width="640" height="360" src="https://www.liveleak.com/ll_embed?i={$id}" frameborder="0" allowfullscreen></iframe>

Vimeo
Mã:
<iframe src="https://player.vimeo.com/video/{$id}" width="500" height="300" frameborder="0"></iframe>

YouTube
Mã:
<iframe width="500" height="300" src="https://www.youtube.com/embed/{$id}?wmode=opaque" frameborder="0" allowfullscreen></iframe>

Metacafe không phải là HTTPS nên không thể nhúng được, nếu không sẽ tạo ra hỗn hợp nội dung và khi đó sẽ có cảnh báo không an toàn khi tải trang có nội dung nhúng từ trang web đó.

Bất kỳ hiện tượng nhúng nào từ các trang web không sử dụng HTTPS sẽ phải được xóa hoặc vô hiệu hóa, bằng cách xóa mục nhập trang web media trong ACP và chỉnh sửa nội dung bài đăng để xóa chúng.

Điều tương tự cũng áp dụng cho bất kỳ trang web media tuỳ chỉnh nào khác được triển khai, bằng tay hoặc thông qua các tiện ích của bên thứ ba.

Quảng cáo
Cũng như hình ảnh và video được nhúng, mọi quảng cáo sẽ phải đến từ nhà cung cấp dịch vụ đó qua HTTPS. Đối với nhiều người, có thể đó sẽ là Google AdSense và DoubleClick. Nếu nhà cung cấp mà bạn sử dụng không sử dụng HTTPS thì bạn sẽ không còn có thể sử dụng chúng và sẽ phải đợi họ chuyển sang HTTPS hoặc thay đổi nhà cung cấp.
Nếu bạn hiện đã triển khai AdSense, hãy đảm bảo script được gọi đang sử dụng HTTPS hoặc không có giao thức, như sau:
Mã:
<script src="//pagead2.googlesyndication.com/pagead/show_ads.js"></script>

Nội dung được lưu trữ từ xa
Mọi nội dung được lưu trữ từ xa khác, chẳng hạn như biểu tượng, hình ảnh, script tùy chỉnh, v.v ... phải được phân phối qua HTTPS.
Nói chung, luôn luôn có nội dung được lưu trữ trên máy chủ tốt hơn là có biểu tượng trang web được lưu trữ ở đâu đó như Imagebucket.

Sitemap
Bất kỳ URL bổ sung nào được nhập trong ACP -> Options -> XML Sitemap Generation: Extra Sitemap URLs phải được cập nhật.
Sơ đồ trang web cũng nên được xây dựng thông lại qua ACP -> Tools -> Rebuild Caches: Rebuild XML Sitemap

Notices, Help Pages, User Upgrades, Style Properties, Templates
Nếu bất kỳ URL nào đã được mã hóa cứng trong thông báo, trang trợ giúp tuỳ chỉnh, mô tả nâng cấp người dùng, hình ảnh style property hoặc template, chúng sẽ được cập nhật.

Cảnh báo
Cảnh báo được thiết lập để phát hành một cuộc trò chuyện nên được cập nhật nếu URL trang web có mặt trong văn bản cuộc trò chuyện.

Đang cập nhật nội dung hiện có
Mặc dù không cần thiết, một số người thích cập nhật bất kỳ liên kết hiện có nào cho trang web của họ trong các bài đăng và cuộc trò chuyện, một khi họ đã chuyển sang HTTPS.
Cách dễ nhất để làm điều đó là sử dụng một chương trình như phpMyAdmin và chạy truy vấn đối với các bảng khác nhau.

Đối với nội dung bài đăng, truy vấn có dạng:
Mã:
UPDATE xf_post SET message = REPLACE(message,'current_content','new_content');

Trường hợp này, current_content là văn bản bài viết hiện tại và new_content là những gì cần thay đổi thành.

Một ví dụ cụ thể sẽ như vậy, khi trang web này chuyển sang HTTPS:
Mã:
UPDATE xf_post SET message = REPLACE(message,'http://vnxf/vn/','https://vnxf.vn/');

Lưu ý rằng thông thường chỉ được sử dụng để thay đổi liên kết cho trang web bạn đang chuyển sang HTTPS (tức là trang web của riêng bạn).
Không thể thay đổi tất cả liên kết trong bài đăng sang HTTPS vì không phải tất cả các trang web làm việc trên HTTPS và làm như vậy sẽ khiến một số liên kết đó không hoạt động.

Một truy vấn tương tự có thể được chạy chống lại các tin nhắn cuộc trò chuyện:
Mã:
UPDATE xf_conversation_message SET message = REPLACE(message,'current_content','new_content');

Điều vô cùng quan trọng khi chạy bất kỳ truy vấn nào trên cơ sở dữ liệu đó là đảm bảo sao lưu được thực hiện đầu tiên, nếu cần phải hoàn tác trong trường hợp xảy ra bất kỳ vấn đề gì.

Các bước bổ sung
Các hành động khác có thể được yêu cầu, tùy thuộc vào các tùy chọn và chức năng được kích hoạt trong cài đặt XF, cũng như trên các trang bên ngoài. Một số trong số đó được liệt kê dưới đây.

PayPal
Nếu triển khai thực hiện nâng cấp người dùng trả phí, hãy cập nhật IPN Notification URL trong tài khoản PayPal.

Tài khoản bên ngoài
Nếu đăng ký và đăng nhập được sử dụng qua Facebook, Twitter, Google, v.v ... đảm bảo các ứng dụng được cập nhật với đúng URL.
Nó cũng có giá trị cập nhật bất kỳ trang web liên quan đến các tài khoản bên ngoài khác cho StopForumSpam, Project Honey Pot, vv, theo yêu cầu.

Robots.txt
Nếu bạn có mục nhập tập tin robots.txt cho sơ đồ trang web (ví dụ https://vnxf.vn/robots.txt), hãy đảm bảo cập nhật nó.

Liên kết trang web bên ngoài
Cuối cùng, đừng quên cập nhật URL trên các trang web khác, chẳng hạn như Google Webmaster Tools, Google Analytics, trang chủ của bạn (nếu bạn có), Twitter, Facebook, YouTube và các tài khoản social media khác được liên kết đến trang web của bạn, chữ ký của diễn đàn và liên kết trang cá nhân, v.v.

Chúc các bạn thành công.


Nguồn: xenforo.com​
 
  • Like
Reactions: THB

THB

Founder
Thành viên BQT
Tham gia
25/02/2015
Bài viết
6,649
Được Like
3,938
đó là vấn đề của seo đó bác. Ko phải muốn chơi cái nào cũng đc. hii.đổi qua https mất hết link, seo giảm trầm trọng.
Còn cái nào 4rum nào mới thì làm từ đầu là ok .
 

onlyonelove

MasterCorporal
Tham gia
03/11/2015
Bài viết
367
Được Like
213
đó là vấn đề của seo đó bác. Ko phải muốn chơi cái nào cũng đc. hii.đổi qua https mất hết link, seo giảm trầm trọng.
Còn cái nào 4rum nào mới thì làm từ đầu là ok .
Làm theo hướng dẫn của google là chuyển được lưu lượng hết mà bạn.
 

antinphat

Corporal
Tham gia
17/05/2019
Bài viết
105
Được Like
36
mình dùng style share họ dùng https qua 1 thời gian dùng https đã hết hạn giờ mọi thứ ko vào được bạn nào fix bỏ https giúp mình với
thanks !
web: atpexport.vn
 

MyLam

Private
Tham gia
26/07/2019
Bài viết
6
Được Like
1
Của em server["https"] đã on rồi nhưng vẫn ở trạng thái Thông tin hoặc Không bảo mật thì phải làm sao ạ?
 

Hướng dẫn sử dụng

XenForo 1 XenForo 2
Translate by PVS

Dịch vụ XenForo của VNXF

Mr. Tuấn

Mobile/Zalo: 0988 488 096

Telegram: bluekpro

Email: [email protected]

Nhà Tài Trợ

Mút Xốp Không Gian
pallet Thịnh Phát
Top Bottom