Mẹo đơn giản để khắc phục lỗi Codex Desktop kết nối lại 5 lần

@jinglian
TIẾNG TRUNG1 tháng trước · 06 thg 6, 2026
500K
883
151
54
2.2K

TL;DR

Bài viết này giải thích cách khắc phục lỗi hết thời gian chờ bắt tay WebSocket của Codex Desktop bằng cách thiết lập chính xác các biến môi trường proxy HTTP và HTTPS trong tệp cấu hình của ứng dụng.

前端哥Liam - inline image

2:59

Khi sử dụng Codex Desktop, chắc hẳn bạn thường gặp phải tình huống sau:

前端哥Liam - inline image

Hầu như lần nào cũng vậy, nó chỉ phản hồi sau 5 lần kết nối lại. 5 lần kết nối lại này khiến mọi người chờ đợi quá lâu và hoàn toàn lãng phí thời gian.

Nguyên nhân là sau khi nâng cấp lên phiên bản mới của Codex Desktop (không rõ phiên bản cụ thể), phương thức kết nối mặc định đã được thay đổi thành giao thức WebSocket. Khi kết nối này thất bại, nó sẽ hiển thị trực tiếp trong nhật ký dưới dạng WebSocket handshake timeout.

Tại sao lại xảy ra điều này? Bởi vì Codex Desktop là một ứng dụng máy tính để bàn, nó không tự động kế thừa proxy hệ thống như trình duyệt. Khi khởi động, nó cần đọc rõ ràng các biến môi trường như HTTP_PROXYHTTPS_PROXY để sử dụng proxy. Nếu các biến này không được thiết lập, nó sẽ cho rằng có thể kết nối trực tiếp, dẫn đến không có phản hồi trong thời gian dài và rơi vào vòng lặp kết nối lại.

Lấy macOS làm Ví dụ

  1. Nhập lệnh sau vào terminal để xem thông tin proxy:
text
1scutil --proxy
前端哥Liam - inline image

Hình ảnh trên cho thấy cổng proxy cho cả http và https đều là 6152. Bạn có thể tự tạo hoặc chỉnh sửa tệp ~/.codex/.env hiện có và ghi các biến proxy vào đó.

text
1HTTP_PROXY=http://127.0.0.1:6152
2HTTPS_PROXY=http://127.0.0.1:6152

Sau khi chỉnh sửa ~/.codex/.env và lưu lại, hãy thoát Codex Desktop và mở lại để giải quyết vấn đề này.

Nếu bạn không muốn làm thủ công, bạn có thể sử dụng Prompt sau và gửi nó cho Codex:

text
1Hãy giúp tôi khắc phục sự cố Codex Desktop liên tục Kết nối lại.
2
3Vui lòng xác định cổng proxy và giao thức proxy hiện đang được sử dụng trên máy của tôi, sau đó tạo hoặc cập nhật ~/.codex/.env và ghi cấu hình proxy sau. Không mã hóa cứng cổng; vui lòng thay thế bằng cổng thực tế. Nếu tệp đã tồn tại, hãy giữ nguyên các cấu hình khác.
4
5HTTP_PROXY="http://127.0.0.1:<Cổng HTTP hoặc hỗn hợp>"
6HTTPS_PROXY="http://127.0.0.1:<Cổng HTTP hoặc hỗn hợp>"
7
8Sau khi ghi xong, hãy kiểm tra xem cấu hình đã đúng chưa và cho tôi biết cách tôi cần khởi động lại Codex Desktop.

Tất nhiên, bạn cũng có thể thử script tự động hóa một cú nhấp chuột của tôi (chỉ dành cho macOS):

bash
1#!/bin/bash
2# Phát hiện proxy hệ thống macOS và cập nhật ~/.codex/.env
3
4ENV_DIR="$HOME/.codex"
5ENV_FILE="$ENV_DIR/.env"
6
7# Đọc cấu hình proxy hệ thống
8proxy_info=$(scutil --proxy)
9
10http_enabled=$(echo "$proxy_info" | awk '/HTTPEnable/{print $3}')
11http_host=$(echo "$proxy_info" | awk '/HTTPProxy/{print $3}')
12http_port=$(echo "$proxy_info" | awk '/HTTPPort/{print $3}')
13
14https_enabled=$(echo "$proxy_info" | awk '/HTTPSEnable/{print $3}')
15https_host=$(echo "$proxy_info" | awk '/HTTPSProxy/{print $3}')
16https_port=$(echo "$proxy_info" | awk '/HTTPSPort/{print $3}')
17
18# Xây dựng URL proxy
19http_proxy=""
20https_proxy=""
21
22if [[ "$http_enabled" == "1" && -n "$http_host" && -n "$http_port" ]]; then
23 http_proxy="http://${http_host}:${http_port}"
24fi
25
26if [[ "$https_enabled" == "1" && -n "$https_host" && -n "$https_port" ]]; then
27 https_proxy="http://${https_host}:${https_port}"
28fi
29
30# Nếu không tìm thấy proxy HTTP hoặc HTTPS
31if [[ -z "$http_proxy" && -z "$https_proxy" ]]; then
32 echo "❌ Không phát hiện proxy hệ thống; không áp dụng cài đặt proxy."
33 exit 0
34fi
35
36# Nếu HTTPS không được thiết lập riêng, sử dụng lại proxy HTTP
37if [[ -n "$http_proxy" && -z "$https_proxy" ]]; then
38 https_proxy="$http_proxy"
39fi
40
41echo "✅ Đã phát hiện proxy hệ thống:"
42[[ -n "$http_proxy" ]] && echo " HTTP_PROXY=$http_proxy"
43[[ -n "$https_proxy" ]] && echo " HTTPS_PROXY=$https_proxy"
44
45# Đảm bảo thư mục tồn tại
46mkdir -p "$ENV_DIR"
47
48# Nếu tệp .env không tồn tại, hãy tạo nó
49if [[ ! -f "$ENV_FILE" ]]; then
50 {
51 [[ -n "$http_proxy" ]] && echo "HTTP_PROXY=$http_proxy"
52 [[ -n "$https_proxy" ]] && echo "HTTPS_PROXY=$https_proxy"
53 } > "$ENV_FILE"
54 echo "📄 Đã tạo $ENV_FILE và ghi cấu hình proxy."
55 exit 0
56fi
57
58# Tệp đã tồn tại, cập nhật hoặc thêm vào
59update_or_append() {
60 local key="$1" value="$2"
61 if grep -q "^${key}=" "$ENV_FILE"; then
62 sed -i '' "s|^${key}=.*|${key}=${value}|" "$ENV_FILE"
63 echo "🔄 Đã cập nhật ${key}"
64 else
65 echo "${key}=${value}" >> "$ENV_FILE"
66 echo "➕ Đã thêm ${key}"
67 fi
68}
69
70[[ -n "$http_proxy" ]] && update_or_append "HTTP_PROXY" "$http_proxy"
71[[ -n "$https_proxy" ]] && update_or_append "HTTPS_PROXY" "$https_proxy"
72
73echo "✅ Đã hoàn tất cập nhật $ENV_FILE."

Muốn bắt đầu với AI nhanh chóng nhưng không biết bắt đầu từ đâu?

AI Spark đã tổ chức một kho kiến thức AI miễn phí bao gồm kiến thức cơ bản về AI, xây dựng kho kiến thức, ứng dụng quy trình làm việc, các công cụ AI chính thống, Obsidian, Codex, Skill và thực hành Prompt.

Kho Kiến thức Miễn phí:

https://lcnniolukk80.feishu.cn/wiki/space/7644091204958866380?ccm_open_type=lark_wiki_spaceLink&open_tab_from=wiki_home

Lưu một chạm

Đọc sâu bài viết viral bằng AI trong YouMind

Lưu nguồn, đặt câu hỏi tập trung, tóm tắt lập luận và biến một bài viết viral thành các ghi chú có thể tái sử dụng trong một không gian làm việc AI duy nhất.

Khám phá YouMind
Dành cho nhà sáng tạo

Biến Markdown của bạn thành bài viết 𝕏 gọn gàng

Khi bạn đăng bài viết dài của riêng mình, việc định dạng hình ảnh, bảng và khối mã cho 𝕏 rất mệt mỏi. YouMind biến cả bản nháp Markdown thành một bài viết 𝕏 gọn gàng, sẵn sàng để đăng.

Thử Markdown sang 𝕏

Thêm pattern để giải mã

Bài viết viral gần đây

Khám phá thêm bài viết viral