wpad에서 로컬 주소 제외

wpad에서 로컬 주소 제외

나는 squid 3128 및 apache2가 포함된 프록시 Ubuntu 18.04를 가지고 있으며 dhcp 252 옵션을 사용하여 자동 구성 파일인 Proxy.pac을 게시했습니다.

파일에는 다음 내용이 포함되어 있습니다.

function FindProxyForURL(url, host) {return "PROXY 192.168.0.10:3128";}

내 로컬 네트워크의 일부 컴퓨터에는 다음 URL에 액세스할 수 있는 애플리케이션이 있습니다.

http://localhost:8080
http://192.168.0.12:8090/app/bar

문제는 오징어가 그런 요청에 제한이 있다는 것입니다.

로컬 주소에 대한 요청을 제외하도록 Proxy.pac을 어떻게 구성합니까? (예: 192.168.0.0/24 또는 localhost:port)

임시 해결 방법은 브라우저(Windows: 제어판/인터넷 옵션)에 프록시의 ip:port를 수동으로 입력하고 "로컬 주소에 프록시 서버를 사용하지 않음" 상자를 선택한 다음 Proxy.pac이 이를 수행하지 않는 것입니다. 중요성.

답변1

기능을 다음으로 변경하십시오.

function FindProxyForURL(url,host) {
    var hostIP;
    if (isIpV4Addr.test (host)) {
        hostIP = host;
    }
    else {
        hostIP = dnsResolve(host);
    }
    if (isInNet(hostIP, "192.168.0.0", "255.255.255.0")) {
        return "DIRECT";
    }
    if (host == "localhost") {
        return "DIRECT";
    }
    return "PROXY 192.168.0.10:3128";
}

먼저 호스트 부분이 IPv4 번호인지 확인하세요. 그렇다면 IP로 직접 사용하세요.

그렇지 않은 경우 호스트 부분을 IP 주소로 확인하고 결과를 사용하십시오.

그런 다음 IP 주소를 지정된 서브넷과 일치시키고, 일치하는 경우 브라우저에 호스트에 직접 액세스하도록 지시합니다.

또한 호스트 이름이 "localhost"인 경우 브라우저는 호스트에 직접 액세스하라는 지시를 받습니다(비록 브라우저가 "localhost"에 대해 이 기능을 사용할지 궁금합니다).

마지막으로 기본값은 프록시를 사용하는 것입니다.

관련 정보