WP_PROXY_HOST và WP_PROXY_PORT đã được đặt. Một yêu cầu tới API bên ngoài dùng proxy, nhưng yêu cầu quay lại tên máy chủ của chính WordPress thì không. Đó có thể là chính sách bỏ qua dự kiến của HTTP API.

WP_HTTP_Proxy quyết định liệu một URI cụ thể có nên đi qua proxy hay không. Logic mặc định của nó bỏ qua localhost và tên máy chủ bắt nguồn từ siteurl đã cấu hình của trang. Điều này tách biệt với việc chỉ quyết định xem các hằng số proxy có tồn tại hay không.

Kiểm tra URL mà WordPress đã đánh giá

Giữ cùng nhau tên máy chủ được yêu cầu, URL trang đã cấu hình và WP_PROXY_BYPASS_HOSTS. Yêu cầu tới một tên máy chủ công khai và yêu cầu tới một bí danh nội bộ có thể đưa ra quyết định khác nhau dù cả hai đều tới cùng một ứng dụng.

WP_PROXY_BYPASS_HOSTS thêm một danh sách loại trừ máy chủ đã cấu hình. Đó không phải là tập đích mà proxy từ xa cho phép, và nó không làm cho một yêu cầu bên ngoài vốn bị chặn trở nên được phép.

Việc loại trừ chính trang theo mặc định có thể hữu ích: nó tránh đưa một yêu cầu ứng dụng cục bộ kiểu loopback ra tới một bên trung gian. Nhưng một bản cài đặt mà tên máy chủ công khai của trang chỉ có thể tiếp cận qua một tuyến đã được phê duyệt cụ thể có thể cần một quyết định có chủ đích khác.

Thay đổi quyết định tại hook được hỗ trợ

Bộ lọc pre_http_send_through_proxy có thể ghi đè quyết định theo từng URI. Giữ mọi ghi đè hẹp và khớp với máy chủ hoặc điều kiện mà nó phải xử lý. Trả về một câu trả lời cố định cho mọi URI sẽ thay đổi chính sách của toàn bộ HTTP API.

Cũng hãy xem lại phương thức vận chuyển đã chọn. Mã gọi một SDK riêng hoặc một hàm mạng PHP thô không tự động dùng HTTP API của WordPress và bộ lọc của nó.

Khi chẩn đoán đường đi này, hãy ghi lại quyết định bỏ qua mà không công khai toàn bộ đối số yêu cầu. Chúng có thể chứa cookie, thông tin tài khoản và bí mật proxy. Nhật ký proxy không có yêu cầu khớp thì phù hợp với một lần bỏ qua, nhưng chỉ riêng nó không đủ để phân biệt với một yêu cầu chưa từng được thực hiện.

Bài viết liên quan