NuGet은 1.4 버전부터 프록시 설정 구성을 허용한다는 것을 알았습니다. 그러나 명령 줄 예제를 찾을 수 없습니다.
일부 빌드를 실행하려고하는데 NuGet이 연결할 수 없습니다.
명령 줄에서 프록시 설정을 구성하려면 어떻게합니까?
답변
NTLM 인증을 사용하는 회사 프록시에서이 작업을 수행하기 위해 수행 한 작업은 다음과 같습니다. NuGet.exe를 다운로드 한 후 다음 명령을 실행했습니다 ( CodePlex 의이 토론 에 대한 주석에서 찾았습니다 ).
nuget.exe config -set http_proxy=http://my.proxy.address:port
nuget.exe config -set http_proxy.user=mydomain\myUserName
nuget.exe config -set http_proxy.password=mySuperSecretPassword
이것은 내 NuGet.config
위치에 다음을 넣 습니다 %appdata%\NuGet
( Windows 7 컴퓨터의 C : \ Users \ myUserName \ AppData \ Roaming 에 매핑 됨 ).
<configuration>
<!-- stuff -->
<config>
<add key="http_proxy" value="http://my.proxy.address:port" />
<add key="http_proxy.user" value="mydomain\myUserName" />
<add key="http_proxy.password" value="base64encodedHopefullyEncryptedPassword" />
</config>
<!-- stuff -->
</configuration>
덧붙여서, 이것은 또한 Visual Studio에서 처음으로 패키지 소스에 도달했을 때만 작동하는 NuGet 문제를 해결했습니다.
이 접근 방식을 시도한 일부 사람들
http_proxy.password
은 명령 줄에서 키 설정을 생략 하거나 구성 파일에서 사후에 삭제할 수 있었으며 여전히 NuGet 기능을 사용할 수 있었다는 의견을 통해보고 했습니다. 프록시를 통해.
그러나 NuGet 구성 파일에서 암호를 지정 해야하는 경우 프록시 자격 증명이 네트워크 인 경우 네트워크 로그인을 변경할 때 명령 줄에서 NuGet 구성에 저장된 암호를 업데이트해야합니다. 자격 증명 .
답변
아마도 devenv.exe.config에 이것을 시도 할 수 있습니다.
<system.net>
<defaultProxy useDefaultCredentials="true" enabled="true">
<proxy proxyaddress="http://proxyaddress" />
</defaultProxy>
<settings>
<servicePointManager expect100Continue="false" />
<ipv6 enabled="true"/>
</settings>
</system.net>
NuGet 문제 추적기 에서 찾았습니다.
NuGet + 네트워크 문제에 대한 다른 귀중한 의견도 있습니다.
답변
https 버전의 nuget ( https://www.nuget.org )을 사용하는 경우 https로 값을 설정해야합니다.
- https_proxy
- https_proxy.user
- https_proxy.password
답변
나는 틀릴 수 있지만 IE의 프록시 설정을 사용한다고 생각했습니다.
로그인이 필요하다고 판단되면 대화 상자가 열리고 로그인하라는 메시지가 표시됩니다.
여기에서 이에 대한 설명을 참조하십시오-> http://docs.nuget.org/docs/release-notes/nuget-1.5
답변
VS2015를 사용하는 사람 : “407 프록시 인증 필요”오류가 발생하여 빌드가 손상되었습니다. 몇 시간 동안 조사한 결과 ‘DownloadNuGet’대상의 일부로 Nuget을 다운로드하려고 할 때 MSBuild가 자격 증명을 보내지 않는 것으로 나타났습니다. 해결책은 다음 XML을 <configuration>
요소 내의 C : \ Program Files (x86) \ MSBuild \ 14.0 \ Bin \ MSBuild.exe.config에 추가하는 것입니다 .
<system.net>
<defaultProxy useDefaultCredentials="true">
</defaultProxy>
</system.net>
답변
나를위한 해결책은
<configuration>
<config>
<add key="http_proxy" value="http://<IP>:<Port>" />
<add key="http_proxy.user" value="<user>" />
<add key="http_proxy.password" value="<password>" />
</config>
</configuration>
에서 nuget.config
파일.
답변
동일한 “nuget 용 프록시”에 대한 또 다른 특징 : 또는 fiddler를 통해 연결하도록 nuget 프록시 설정을 지정할 수 있습니다 . cmd 아래에서 사용자의 기본 nuget 구성 파일에 프록시 설정을 저장합니다.%APPDATA%\NuGet\NuGet.Config
nuget config -Set HTTP_PROXY=http://127.0.0.1:8888
인터넷에 연결하기 위해 너겟이 필요할 때마다 Fiddler를 열고 기본 포트 8888에서 수신 대기하는 피들러가 있다고 가정합니다.
이 구성은 Fiddler가 업스트림 프록시를 사용하여 모든 인증을 해결하므로 패스 워크 변경에 민감하지 않습니다.