Computer >> Hướng Dẫn Máy Tính >  >> Xử Lý Sự Cố >> Các Trình Duyệt

Cách khắc phục lỗi 'Localhost Refused to Connect' trên Windows

Nếu bạn đang chạy XAMPP hoặc WAMP hoặc bất kỳ máy chủ web nào khác trên máy tính cục bộ, và bạn gặp thông báo lỗi "Localhost refused to connect" (Localhost từ chối kết nối), thì có thể có điều gì đó sai với cấu hình của bạn. Điều này cũng có thể bao gồm các kịch bản mà localhost không tương ứng với 127.0.0.1 đúng cách hoặc khi bạn có quyền không đủ để truy cập tệp. Localhost hoặc 127.0.0.1 là địa chỉ IP của máy chủ web chạy trên máy tính của bạn, không phải trên web và bạn có thể truy cập nó ngay cả khi không có kết nối internet.

Cách khắc phục lỗi  Localhost Refused to Connect  trên Windows

Localhost tương ứng với bất kỳ máy chủ web nào chạy trên máy tính mà bạn cố gắng truy cập từ đó. Kiểm tra ứng dụng, thực hiện thay đổi đối với ứng dụng hiện tại và làm bất kỳ công việc phát triển nào khác trên máy tính cục bộ tốt hơn là làm trên máy chủ trực tuyến hoặc môi trường sản xuất. Cách đó bạn có thể kiểm tra lỗi và loại bỏ chúng mà không cần làm hỏng ứng dụng đang chạy trên máy chủ web trực tuyến hoặc trong môi trường sản xuất. Bạn sẽ có thể kiểm tra ứng dụng để đảm bảo nó hoạt động đúng và sẽ không gây ra bất kỳ thời gian ngừng hoạt động hoặc vấn đề khác khi nó trực tiếp trong môi trường sản xuất. Thậm chí có trường hợp bạn muốn phát triển ứng dụng trong trình soạn thảo như Microsoft's Visual Studio / Visual Studio Code, mà bạn có thể dùng để phát triển ứng dụng Android, và bạn gặp lỗi này khi muốn kết nối dự án với máy chủ web chạy trên máy của bạn hoặc gói máy chủ web do trình soạn thảo cung cấp.

Có nhiều lý do tại sao lỗi này xảy ra, và nguyên nhân chính xác của lỗi này phụ thuộc vào nguyên nhân gốc rễ gây ra nó. Do đó, trước khi bắt đầu chỉ cho bạn cách khắc phục vấn đề này, hãy cùng đi qua các nguyên nhân có thể của lỗi để thiết lập sự hiểu biết tốt hơn về vấn đề.

  • Localhost không tương ứng với 127.0.0.1 — Có thể có trường hợp localhost trên máy của bạn không tương ứng chính xác với 127.0.0.1. Nếu đó là lý do, bạn sẽ không thể truy cập máy chủ web cục bộ bằng cách gõ localhost trong trình duyệt web hoặc ping localhost từ command prompt.
  • Sử dụng WSL trên Windows để chạy máy chủ web — Đôi khi, Dịch vụ LxssManager trên Windows là thủ phạm nếu bạn đang chạy máy chủ web bên trong một bản phân phối linux trên windows subsystem for linux.
  • Cổng 80 được sử dụng bởi ứng dụng khác trên máy tính — Trong một số trường hợp, lỗi này có thể xảy ra nếu cổng 80 trên máy tính được sử dụng bởi bất kỳ ứng dụng nào khác trên máy tính. Skype từng sử dụng cổng 80 hồi xưa và bạn không thể chạy máy chủ apache trên WAMP hoặc XAMPP trong khi đồng thời chạy Skype trên máy Windows.
  • Truy cập máy chủ web từ cổng sai — Có khả năng máy chủ web của bạn được cấu hình để sử dụng cổng khác thay vì cổng mặc định 80, và bạn đang cố gắng truy cập bằng cách gõ localhost trong trình duyệt mặc định là localhost:80 tức cổng 80. Nếu đó là trường hợp, bạn sẽ nhận được thông báo lỗi này.
  • Quyền không đủ — Trong một số kịch bản, lỗi này có thể nảy sinh nếu bạn đang cố gắng truy cập tệp hoặc thư mục trong máy chủ web cục bộ mà không được phép truy cập bởi người dùng của bạn.

Bây giờ chúng tôi đã nói cho bạn biết một số lý do tại sao lỗi này nảy sinh trên máy tính Windows. Bây giờ, hãy xem bạn có thể làm gì để khắc phục hoặc loại bỏ lỗi này và tiếp tục hành trình phát triển web của bạn.

Thay đổi cổng máy chủ web Apache trong XAMPP hoặc WAMP

Trước hết, cách phổ biến nhất để giải quyết lỗi này là thay đổi cổng của máy chủ web apache nếu bạn đang sử dụng XAMPP hoặc WAMP trên Windows. Thường thì, một số ứng dụng web khác bạn có thể đang chạy trên máy tính có thể chiếm giữ cổng 80 và nó bị chặn/không thể truy cập bởi ứng dụng như apache. Do đó, mặc dù apache đang chạy, nó sẽ không thể tải trang web trên cổng cụ thể đó.

Thay đổi cổng Apache trong XAMPP

Để thay đổi cổng chạy của máy chủ web apache trong XAMPP, hãy làm như sau:

  1. Trước hết, khởi động XAMPP từ Menu Bắt đầu.
  2. Sau đó, ở phần khay hệ thống của thanh tác vụ bạn sẽ thấy biểu tượng XAMPP, nhấp đúp vào nó.
  3. Bây giờ bạn sẽ thấy Cửa sổ Control Panel (Bảng điều khiển) XAMPP. Trong cửa sổ đó, bạn sẽ thấy danh sách các dịch vụ đang chạy tức apache, mysql, v.v.
  4. Bên cạnh tên dịch vụ, sẽ có nút gọi là "Stop (Dừng)". Nhấp vào Stop trước dịch vụ apache.Cách khắc phục lỗi  Localhost Refused to Connect  trên Windows
  5. Tiếp theo mở windows explorer, và đi đến thư mục C:\xampp\apache\conf . Ở đó, tìm file tên httpd.conf.Cách khắc phục lỗi  Localhost Refused to Connect  trên Windows
  6. Mở nó bằng Notepad hoặc bất kỳ trình soạn thảo nào bạn muốn. Bên trong file, tìm hai dòng này.
    Listen 80 ServerName localhost:80
    Cách khắc phục lỗi  Localhost Refused to Connect  trên Windows
  7. Khi bạn đã tìm thấy chúng, thay thế chúng bằng sau:
    Listen 8080 ServerName localhost:8080
  8. Bây giờ, lưu file. Nó sẽ yêu cầu đặc quyền quản trị khi bạn lưu file. Nhấp vào Yes (Có) khi hộp thoại xuất hiện.
  9. Bây giờ mở bảng điều khiển XAMPP lại, và khởi động máy chủ web apache.
  10. Nếu lỗi do xung đột số cổng, thì làm như vậy sẽ giải quyết được.

Thay đổi số cổng máy chủ web Apache trong WAMP

Để thay đổi số cổng máy chủ web apache trong wamp, trước hết bạn cần đóng WAMP.

  1. Để làm vậy, mở Task Manager (Trình quản lý tác vụ) bằng cách nhấp chuột phải vào thanh tác vụ và chọn Task Manager từ menu xuất hiện.Cách khắc phục lỗi  Localhost Refused to Connect  trên Windows
  2. Khi Task Manager mở, xem có instance (thể hiện) nào của WAMP đang chạy không. Nếu có, chỉ cần nhấp vào nút End Task (Kết thúc tác vụ) để dừng chúng.
  3. Bây giờ, mở Windows Explorer bằng cách nhấp đúp vào biểu tượng My Computer trên màn hình desktop. Điều hướng đến thư mục C:\wamp\Apache2\conf và mở file tên httpd.conf với notepad hoặc trình soạn thảo khác bạn chọn.
  4. Sau đó, tìm hai dòng này trong file:
    Listen 80 ServerName localhost:80
    Cách khắc phục lỗi  Localhost Refused to Connect  trên Windows
  5. Sau khi xác định các dòng này, thay thế chúng bằng sau:
    Listen 8080 ServerName localhost:8080
  6. Đó là xong, lưu file. Và mở WAMP lại và xem bạn có còn gặp lỗi này hay không.

Truy cập Localhost bằng cách sử dụng 127.0.0.1

Như chúng tôi đã đề cập trước đó, một trong những lý do thông báo lỗi có thể xuất hiện là, trong một số trường hợp, localhost không tương ứng với 127.0.0.1 là địa chỉ máy chủ web cục bộ của bạn.

Để khắc phục vấn đề đó, khởi động máy chủ web bằng cách chạy XAMPP hoặc WAMP và đi đến trình duyệt và gõ 127.0.0.1 và nhấn Enter. Nếu bạn có thể truy cập máy chủ web bằng cách này, thì có nghĩa là localhost không trỏ đến IP này, và bạn sẽ cần truy cập bất kỳ dự án/tệp nào trên máy chủ web bằng cách gõ 127.0.0.1/filename thay vì localhost/filename.

Khởi động lại dịch vụ LXSSManager (Cho máy chủ web chạy trên WSL)

Nếu bạn đang sử dụng Windows Subsystem for Linux trên máy tính để chạy máy chủ web, như một số người có thể làm để phát triển ứng dụng Nodejs v.v., trong khi gặp lỗi này, thì điều đơn giản nhất bạn có thể làm là khởi động lại dịch vụ LXSSManager. Để làm điều này, làm theo hướng dẫn cho bên dưới:

  1. Trước hết, mở hộp thoại Run (Chạy) bằng cách nhấn phím tắt Windows key + R trên bàn phím.
  2. Khi hộp thoại Run mở ra, gõ services.msc và nhấn Enter.Cách khắc phục lỗi  Localhost Refused to Connect  trên Windows
  3. Điều này sẽ mở ứng dụng Windows Services (Dịch vụ Windows) nơi bạn sẽ thấy danh sách tất cả dịch vụ hiện có trên máy tính.
  4. Trong cửa sổ Services, tìm dịch vụ tên LxssManager.
  5. Nhấp chuột phải vào nó và chọn Restart (Khởi động lại) từ menu thả xuống. Thay vào đó, bạn có thể nhấp đúp vào nó để mở cửa sổ Properties (Thuộc tính) và sau đó dừng nó. Cuối cùng, nhấp Start (Bắt đầu) lại để hoàn tất khởi động lại.Cách khắc phục lỗi  Localhost Refused to Connect  trên Windows
  6. Khi xong, xem máy chủ web lại. Hy vọng nó sẽ hoạt động nếu do sự cố với dịch vụ LxssManager.

Truy cập Localhost với số cổng

Như kết quả, một giải pháp khác cho thông báo lỗi là nếu máy chủ web của bạn không chạy trên cổng mặc định 80, bạn có thể truy cập máy chủ web cục bộ bằng cách chỉ định số cổng cũng. Thường thì số cổng là 80 hoặc 8080.

Để làm điều đó, bạn phải gõ localhost:8080 trong trình duyệt. Lưu ý bạn không phải gõ localhost:80 vì 80 là cổng mặc định được trình duyệt web sử dụng bất cứ khi nào nó truy cập bất kỳ trang web hoặc máy chủ web nào, dù trực tuyến hay ngoại tuyến.

Xóa file cấu hình ứng dụng (nếu áp dụng)

Nếu bạn đang sử dụng Visual Studio và làm lập trình asp.net và gặp lỗi này, đừng lo lắng, chúng tôi có bản sửa lỗi cho bạn. Điều bạn cần làm là xóa file application.config nằm trong thư mục tên là .vs. Trong một số trường hợp, thư mục này có thể bị ẩn vì vậy hãy đảm bảo bạn có thể thấy các tệp ẩn trong cửa sổ Windows Explorer. Làm theo hướng dẫn dưới để làm điều này:

  1. Trước hết, mở thư mục dự án và sau đó mở thư mục .vs. Nếu bạn không thấy thư mục này, đó là vì nó bị ẩn. Bạn sẽ phải chỉnh sửa tùy chọn thư mục trong cửa sổ Windows Explorer để có thể thấy tệp và thư mục ẩn.Cách khắc phục lỗi  Localhost Refused to Connect  trên Windows
  2. Khi đã ở trong thư mục .vs, mở thư mục config.
  3. Bên trong thư mục config, xóa file application.config.
  4. Đó là xong, nếu bạn đang dùng IISExpress và làm dự án asp.net, thì điều này hy vọng sẽ khắc phục được vấn đề Visual Studio không thể kết nối với localhost.