Làm cách nào để khắc phục 'Lỗi kết nối hiện tại đã bị đóng do lỗi máy chủ từ xa'?

Một máy tính từ xa là máy tính không có sự hiện diện vật lý; nó chỉ có thể được truy cập thông qua một số loại mạng máy tính. Remote Host là máy tính lưu trữ mạng lưu trữ máy tính từ xa và máy khách từ xa là người dùng của máy khách từ xa trên mạng. Tính năng này đã cách mạng hóa rất nhiều quy trình và cũng có một phạm vi lớn trong tương lai.

Kết nối hiện tại đã bị đóng do lỗi máy chủ cục bộ

Tuy nhiên, khá gần đây, rất nhiều báo cáo đã xuất hiện trên một mạng, một kết nối hiện có đã bị đóng do lỗi máy chủ từ xa trong khi cố gắng kết nối với máy chủ từ xa. Lỗi này được kích hoạt với kết nối ổ cắm giữa máy khách và máy chủ. Trong bài viết này, chúng tôi sẽ cung cấp một số giải pháp khả thi để khắc phục hoàn toàn lỗi này và cũng thông báo cho bạn các lý do gây ra lỗi này.

Điều gì gây ra 'Một kết nối hiện có đã bị đóng bởi máy chủ từ xa' Lỗi trong Windows?

Sau khi nhận được nhiều báo cáo từ nhiều người dùng, chúng tôi đã quyết định điều tra vấn đề và nghĩ ra một bộ giải pháp để khắc phục nó. Ngoài ra, chúng tôi đã xem xét các lý do mà nó được kích hoạt và liệt kê chúng dưới đây.

  • Cách sử dụng TLS 1.1 / 1.0: Nếu ứng dụng đang chạy trên TLS 1.1 hoặc TLS 1.0, nó có thể gây ra lỗi này do chúng bị khấu hao. TLS 1.2 là cách để đi khi chọn giao thức mà ứng dụng sử dụng.
  • Mật mã bị vô hiệu hóa : Nếu Mật mã đã bị vô hiệu hóa cho máy của bạn, nó sẽ ngăn việc sử dụng TLS 1.2 và sẽ quay trở lại trên TLS 1.0 có thể gây ra lỗi.
  • Thực hiện ổ cắm: Trong một số trường hợp, một loại thực hiện ổ cắm cụ thể gây ra lỗi. Có một lỗi với một số triển khai của ứng dụng .NET .NET .NET và nó có thể gây ra lỗi này.
  • Mã bị thiếu: Đối với một số người đang sử dụng Khung thực thể, có thể thấy rằng một dòng mã nhất định bị thiếu do lỗi được kích hoạt.
  • Khung .NET .NET .NET đã lỗi thời: Trong một số trường hợp nhất định, nếu Khung .NET .NET .NET đã bị vô hiệu hóa, lỗi này có thể được kích hoạt. Một số tác vụ nhất định yêu cầu khung .NET .NET .NET phải được cập nhật lên phiên bản mới nhất để chúng hoạt động bình thường.

Bây giờ bạn đã có một sự hiểu biết cơ bản về bản chất của vấn đề, chúng tôi sẽ chuyển sang các giải pháp. Hãy chắc chắn thực hiện những điều này theo thứ tự cụ thể mà chúng được trình bày để tránh xung đột.

Giải pháp 1: Kích hoạt mật mã

Nếu Mật mã đã bị vô hiệu hóa cho máy của bạn, việc sử dụng TLS 1.2 bị cấm. Do đó, trong bước này, chúng tôi sẽ kích hoạt Mật mã. Cho rằng:

  1. Nhấn vào Windows Windows QUAN + Đăng nhập để mở dấu nhắc Run.
  2. Nhập vào reg reg regi và nhấn vào Enter Enter .

    Nhập vào Reg Reg Hồi và nhấn vào Enter Enter
  3. Điều hướng đến địa chỉ sau
     HKEY_LOCAL_MACHINE \ PHẦN MỀM \ Microsoft \ .NETFramework \ v4.0.3031 

    Điều hướng đến địa chỉ này nếu không có giá trị SchUseStrongCrypto mật trong ngăn bên phải.

     HKEY_LOCAL_MACHINE \ PHẦN MỀM \ Wow6432Node \ Microsoft \ .NETFramework \ v4.0.30319 
  4. Trong khung bên phải, nhấp đúp chuột vào tùy chọn SchUseStrongCrypto, và nhập vào 1 Số 1 dưới dạng dữ liệu Giá trị.

    Nhấp đúp chuột vào giá trị của SchuseStrongCrypto vào khung bên phải
  5. Nhấp vào trên OK OK để lưu các thay đổi của bạn và kiểm tra xem sự cố có còn không.

Giải pháp 2: Buộc sử dụng TLS 1.2

Nếu ứng dụng đã được cấu hình để sử dụng TLS 1.1 hoặc TLS 1.0 thay vì TLS 1.2, ứng dụng có thể gây ra lỗi này. Do đó, trong bước này, chúng tôi sẽ định cấu hình máy tính của chúng tôi để sử dụng TLS 1.2. Cho rằng:

  1. Điều hướng đến thư mục gốc của trang web và nhấp chuột phải vào tập tin toàn cầu.
  2. Chọn mã nguồn Xem mã số từ danh sách.
  3. Cần có một phương thức Application Application_Start ', thêm dòng mã sau vào phương thức đó
     if (ServicePointManager. SecurityProtocol. HasFlag (SecurityProtocolType. Tls12) == false) ServicePointManager. SecurityProtocol = ServicePointManager. Bảo mật 

    Thêm các dòng vào mã
  4. Lưu các thay đổi của bạn và kiểm tra xem vấn đề còn tồn tại không.

Giải pháp 3: Thay đổi ổ cắm

Nếu một cài đặt ổ cắm nhất định có lỗi hoặc trục trặc trong đó, nó có thể ngăn các thành phần nhất định của ứng dụng hoạt động đúng do lỗi này có thể được kích hoạt. Do đó, trong bước này, chúng tôi sẽ cấu hình nó để sử dụng một triển khai khác. Cho rằng:

  1. Hãy chắc chắn rằng bạn có một lớp Bang StateObjec t với các byte công khai [] buffer = new byte [1024], socket socket công khai; Sọ.
  2. Gọi hàm Nhận Nhận (Ổ cắm s) và gọi mã sau đây trong Tiếng trống void NhậnCallback (IAsyncResult ar)
      SocketError errorCode ; int nBytesRec = socket . EndReceive ( ar, out errorCode ); if ( errorCode != SocketError . Success ) { nBytesRec = 0 ; } 
  3. Kiểm tra xem vấn đề còn tồn tại sau khi thực hiện mã này.

Giải pháp 4: Thêm dòng lệnh (Chỉ dành cho khung thực thể)

Nếu bạn đang sử dụng Entity Framework, có thể thiếu một dòng mã nhất định. Do đó, trong bước này, chúng tôi sẽ thêm dòng mã đó để khắc phục sự cố này. Cho rằng:

  1. Mở tập tin .edmx của bạn và mở tập tin .context.ttv bên dưới nó.
  2. Mở tệp tin .context.cs của người dùng và thêm dòng mã sau vào hàm tạo của bạn
      public DBEntities () : base ( "name=DBEntities" ) { this . Configuration . ProxyCreationEnabled = false ; // ADD THIS LINE ! } 
  3. Kiểm tra xem sự cố vẫn còn sau khi thêm dòng mã này.

Giải pháp 5: Cập nhật .NET Framework

Phiên bản mới nhất của .NET .NET .NET Framework được yêu cầu để mọi thứ hoạt động trơn tru. Do đó, trong bước này, chúng tôi sẽ tải xuống phiên bản mới nhất từ ​​trang web và cài đặt nó. Cho rằng:

  1. Điều hướng đến liên kết này để tải về các thiết lập.
  2. Thực hiện tập tin .exe . Để bắt đầu quá trình cài đặt.

    Chạy tệp thực thi được tải xuống từ Microsoft
  3. Thực hiện theo các hướng dẫn trên màn hình để cài đặt ứng dụng trên máy tính của bạn.
  4. Kiểm tra xem sự cố vẫn còn sau khi hoàn tất cài đặt.

Bài ViếT Thú Vị