내 환경에서 여러 프록시를 수동으로 설정할 수 있습니까?

내 환경에서 여러 프록시를 수동으로 설정할 수 있습니까?

다음 PAC 파일을 고려하십시오.

function FindProxyForURL(url, host) {
    if (dnsDomainIs(host, "intranet.domain.com"))
        return "DIRECT";

    if (isInNet(myIpAddress(), "10.10.5.0", "255.255.255.0"))
        return "PROXY 1.2.3.4:8080";

    return "PROXY 4.5.6.7:8080; PROXY 7.8.9.10:8080";
}

$http_proxy이러한 설정을 환경 $no_proxy변수 로 전송하는 방법이 있습니까 ?

답변1

no_proxy비슷한 값으로 설정할 수 있지만 no_proxy="intranet.domain.com,*.local,..."그렇지 않은 경우 환경 변수는 프로세스별 문자열이므로 [†] a) 어떤 논리를 표현하거나 isInNetb) 기존 프로세스를 일부 오래되고 현재 유효하지 않은 세트로 업데이트할 수 있는 방법이 없습니다. 문자열 환경. 모든 프로세스를 종료하지 않는 한, 수행한 작업을 http_proxy기반으로 새 프로세스를 설정한 다음 모든 프로세스를 다시 시작하여 상위 프로세스로부터 새 프로세스의 새 복사본을 받습니다.isInNetforkhttp_proxy

모든 프로세스를 제어할 수 있는 경우 API를 작성하여 환경 변수를 조정할 수 있습니다. fork제어할 수 없는 일이 발생하면(일부 잘못된 문자열이 프로세스에서 빠르게 설정될 수 있으므로) 기존 비즈니스 로직을 사용하는 것보다 불필요할 수 있는 경우

[†] 글쎄요, 원숭이 패치된 추억이 있기 gdb때문에 쉽거나 그렇지 않은 방법은 없습니다.

관련 정보