2014-12-29 2 views
0

GUI가없는 헤드없는 우분투 시스템을 사용하고 있습니다. 내 우분투에 pac-based 프록시를 사용하고 싶습니다. 내가 apt-get update를 얻을 실행하면프록시 시스템 Wide Ubuntu 사용

function isPlainHostNameEx(host){ 
    return !(!!~host.indexOf('.') || !!~host.indexOf(':')); 
} 

function FindProxyForURL(url, host){ 
    var lhost = host.toLowerCase(); 
    host = lhost; 
    IPNotation = /^\d+\.\d+\.\d+\.\d+$/g; 

    var direct = [ 
    "local", "dev", "ip", "box", "lvh.me", "ripe", "invalid", 
    "intra", "intranet", "onion", "vcap.me", "127.0.0.1.xip.io", 
    "smackaho.st", "localtest.me", "site", "ip" 
    ] 
    for(var i=0;i<direct.length;i++){ 
    if(dnsDomainIs(host, direct[i])){ 
     return "DIRECT"; 
    } 
    } 

    var CC = "DE"; 
    var exceptions = JSON.parse('[{"CC":"US"}]'); 

    for(var i=0;i<exceptions.length;i++){ 
    var e = exceptions[i]; 
    if(e.CC == CC) { 
     for(var j=0;j<e.domains.length;j++){ 
     if(dnsDomainIs(host, e.domains[j])){ 
      return e.nodes; 
     } 
     } 
    } 
    } 

    return "12.024.04.10" 
} 

: 나는 또한

내가 현재

gsettings set org.gnome.system.proxy mode 'manual' 
gsettings set org.gnome.system.proxy.http enabled true 
gsettings set org.gnome.system.proxy.http host 'http://localhost/proxy.pac' 

이 내 .pac 파일의 내용이이 설정을 사용하고 홍수의 bittorent 클라이언트에서 사용하려면 이러한 오류 :

W: Failed to fetch http://stingray.cyber.net.pk/pub/ubuntu/dists/trusty-proposed/Release.gpg Could not resolve 'stingray.cyber.net.pk' 

이 문제를 해결하려면 어떻게해야합니까?

+0

무엇이 문제입니까? :/ – furins

+0

이것은 헤드리스 서버에 사용하려는 pac 스크립트입니다. 나는 apt-get update를 실행할 때 이러한 오류가 발생합니다. W : 가져 오지 못했습니다. http://stingray.cyber.net.pk/pub/ubuntu/dists/trusty-proposed/Release.gpg 'stingray.cyber.net을 확인할 수 없습니다. .pk ' –

답변

0

약간의 질문을 수정하여 명확하게하려고합니다. 내가이 .pac 파일을 쓴 적이 인정하지만 오류가 나는 FindProxyForURL에서 직접 IP 주소를 반환에있는 모든 문서를 찾을 수없는 한 라인

return "12.024.04.10" 

과 관련이있을 수 있다는 것을 나에게 보인다. 어쩌면 당신은 12.024.04.10이 서버에서 도달 할 수 있는지 확인하십시오 추가

return "PROXY 12.024.04.10"; 

을 의미했다.

마지막으로주의하시기 바랍니다 블록 코드가

for(var i=0;i<exceptions.length;i++){ 
    var e = exceptions[i]; 
    if(e.CC == CC) { 
     for(var j=0;j<e.domains.length;j++){ 
     if(dnsDomainIs(host, e.domains[j])){ 
      return e.nodes; 
     } 
     } 
    } 
} 

당신이 (각각 "DE"'[{"CC":"US"}]'를) 우리에게 보여 같은 코드에 하드 정의됩니다 CCexceptions만큼 아무것도 반환하지 않습니다하지만 경우 두 변수를 변경하려는 경우 return e.nodes;이 올바른 문자열 (예 : "PROXY <some_ip>:<some_port>")을 반환하는지 확인하십시오.

희망 하시겠습니까?

+0

pac 파일은 일부 pac 파일 inorder를 편집하여 일부 프록시 서버를 유지합니다 (이 과정에서 일부 코드가 변경되었을 수 있음). 내 컴퓨터에서 폭시 프록시를 사용하여 사용할 수 있지만 어떻게 그것을 머리없는 컴퓨터에서 넓은 시스템을 사용할 수 있습니다. –

+0

죄송합니다. 저는이 분야의 전문가가 아니기 때문에 아마 당신이 무엇을 묻고 있는지 이해하기가 어렵지만이 질문에 대한 답변을 확인해 보시기 바랍니다. http://superuser.com/questions/323488/우분투 - 시스템 - 와이드 - 프록시 - 자동 - 구성 - pac 스크립트 그리고 결국이 가이드 : https://help.ubuntu.com/community/AptGet/Howto#Setting_up_apt-get_to_use_a_http-proxy – furins