Cách sửa lỗi ERR_SSL_PROTOCOL_ERROR trên localhost

 

1. Lỗi ERR_SSL_PROTOCOL_ERROR trên localhost là gì?

Lỗi ERR_SSL_PROTOCOL_ERROR trên localhost xuất hiện khi trình duyệt không thể thiết lập kết nối bảo mật SSL (Secure Sockets Layer) đúng cách với máy chủ localhost của bạn. Đây là một lỗi phổ biến xảy ra trong quá trình phát triển và cấu hình môi trường phát triển trên máy tính cá nhân.

2. Nguyên nhân dẫn đến lỗi ERR_SSL_PROTOCOL_ERROR trên localhost?

  • Chứng chỉ SSL không hợp lệ: Nếu bạn đã tự tạo chứng chỉ SSL tự ký hoặc cài đặt chứng chỉ SSL từ một nhà cung cấp không đáng tin cậy, trình duyệt có thể hiểu rằng kết nối không an toàn và từ chối kết nối.
  • Cấu hình SSL không chính xác: Có thể cấu hình SSL trên máy chủ localhost của bạn bị lỗi hoặc không đúng cách, dẫn đến việc trình duyệt không thể thiết lập kết nối SSL an toàn.
  • Phiên bản SSL không tương thích: Trình duyệt của bạn có thể không hỗ trợ phiên bản SSL mà máy chủ localhost đang sử dụng. Ví dụ, nếu máy chủ sử dụng SSLv2 hoặc SSLv3 cũ, trong khi trình duyệt yêu cầu TLS (Transport Layer Security), lỗi này có thể xảy ra.
  • Các vấn đề về cổng: Có thể cấu hình máy chủ của bạn để lắng nghe trên một cổng không chính xác hoặc không được hỗ trợ bởi giao thức SSL.

3. Cách sửa lỗi ERR_SSL_PROTOCOL_ERROR trên localhost?

1. Cài đặt OpenSSL: Trước tiên, hãy đảm bảo rằng bạn đã cài đặt OpenSSL trên hệ thống của mình. Nếu không, hãy tải xuống và cài đặt nó từ trang web chính thức (https://www.openssl.org/source/).

2. Tạo một thư mục mới: Tạo một thư mục mới trên hệ thống của bạn, nơi bạn sẽ lưu trữ chứng chỉ SSL và khóa cho máy chủ cục bộ của mình.

3. Tạo khóa riêng: Mở terminal hoặc dấu nhắc lệnh, điều hướng đến thư mục bạn vừa tạo và chạy lệnh sau để tạo khóa riêng mới: openssl genrsa -out private.key 2048

4. Tạo Yêu cầu ký chứng chỉ (CSR): Sau khi tạo khóa riêng, hãy tạo CSR bằng lệnh sau: openssl req -new -key private.key -out certificate.csr Bạn sẽ được nhắc nhập một số thông tin về máy chủ cục bộ của mình, chẳng hạn như Quốc gia, Bang và Tên chung (nhập “localhost” cho Tên chung).

5. Tạo chứng chỉ SSL: Bây giờ hãy tạo chứng chỉ SSL tự ký bằng tệp CSR và khóa riêng bằng lệnh sau: openssl x509 -req -in certificate.csr -signkey private.key -out certificate.crt -days 365 Lệnh này sẽ tạo chứng chỉ SSL (certificate.crt) có hiệu lực trong 365 ngày.

6. Định cấu hình máy chủ web của bạn: Tiếp theo, bạn cần định cấu hình máy chủ web của mình (chẳng hạn như Apache, Nginx hoặc Node.js) để sử dụng chứng chỉ SSL và khóa riêng. Quá trình này khác nhau tùy thuộc vào máy chủ bạn đang sử dụng. Ví dụ: trong Nginx, bạn sẽ thêm các dòng sau vào cấu hình máy chủ của mình: server { listen 443 ssl; server_name localhost; ssl_certificate ; ssl_certificate_key ; }

7. Cập nhật tệp máy chủ của bạn: Đảm bảo rằng tệp máy chủ của bạn (thường nằm ở `/etc/hosts` trên Linux và macOS hoặc `C:WindowsSystem32driversetchosts` trên Windows) có mục nhập cho miền máy chủ cục bộ của bạn. Nó sẽ giống như thế này: 127.0.0.1 localhost

8. Tin cậy chứng chỉ SSL: Cuối cùng, để tránh bất kỳ cảnh báo SSL nào trong trình duyệt của bạn, bạn có thể cần phải nhập và tin tưởng chứng chỉ tự ký trên hệ thống của mình. Quá trình này khác nhau tùy thuộc vào hệ điều hành và trình duyệt của bạn. Đây là cách bạn có thể làm điều đó trên một số nền tảng phổ biến: – macOS: Mở “Truy cập chuỗi khóa”, nhập chứng chỉ và đặt mức độ tin cậy thành “Luôn tin cậy”. – Windows: Mở “Trình quản lý chứng chỉ” (certmgr.msc), nhập chứng chỉ vào thư mục “Cơ quan cấp chứng chỉ gốc đáng tin cậy”. – Firefox: Vào “Preferences” > “Privacy & Security” > “View Certificates” > “Import,” và chọn tệp chứng chỉ. Sau khi hoàn thành các bước này, hãy khởi động lại máy chủ web của bạn và bạn sẽ có thể truy cập máy chủ cục bộ của mình bằng HTTPS mà không gặp phải lỗi “ERR_SSL_PROTOCOL_ERROR”.

>> SSL Localhost là gì? Cách bật SSL Localhost

0/5 (0 Reviews)

Leave a Comment