代理背后的 TFS 2015

TFS 2015 behind a proxy

安装了我的 TFS 2015 的机器为了访问互联网,需要进行身份验证并通过代理服务器。显然,它不需要以任何方式访问网络。但是,我的 TFS 门户主页概述中的新闻面板从 Web 获取新闻。我可以在事件日志中看到以下错误:

System.Net.WebException: Unable to connect to the remote server ---> System.Net.Sockets.SocketException: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond 23.52.183.215:80
   at System.Net.Sockets.Socket.DoConnect(EndPoint endPointSnapshot, SocketAddress socketAddress)
   at System.Net.ServicePoint.ConnectSocketInternal(Boolean connectFailure, Socket s4, Socket s6, Socket& socket, IPAddress& address, ConnectSocketState state, IAsyncResult asyncResult, Exception& exception)
   --- End of inner exception stack trace ---
   at System.Net.HttpWebRequest.GetResponse()
   at System.Xml.XmlDownloadManager.GetNonFileStream(Uri uri, ICredentials credentials, IWebProxy proxy, RequestCachePolicy cachePolicy)
   at System.Xml.XmlUrlResolver.GetEntity(Uri absoluteUri, String role, Type ofObjectToReturn)
   at System.Xml.XmlTextReaderImpl.FinishInitUriString()
   at System.Xml.XmlTextReaderImpl..ctor(String uriStr, XmlReaderSettings settings, XmlParserContext context, XmlResolver uriResolver)
   at System.Xml.XmlReaderSettings.CreateReader(String inputUri, XmlParserContext inputContext)
   at Microsoft.TeamFoundation.Server.WebAccess.Controllers.ApiCommonController.GetNews(Int32 maxCount)

从事件中可以看出,ApiCommonController 上的 GetNews 方法无法获取数据。

我很想为用户(我的 TFS 服务帐户)设置代理访问 运行 TFS 应用程序池,我尝试配置系统。net/defaultProxy 在 IIS 配置编辑器中,但没有成功。

有谁知道如何让TFS通过代理服务器上网?

谢谢

为用户设置代理访问并配置系统后。net/defaultProxy在 IIS 配置中。

  • 请重新启动 VS 和您的机器。更改可能不起作用 立即。
  • 暂时禁用任何防火墙(尤其是Windows防火墙)和 你有 运行.
  • 杀毒软件
  • 另外请确保您已经检查了代理服务器设置中的Bypass proxy server for local addresses

我找到了让它工作的方法。在 C:\Program Files\Microsoft Team Foundation Server 14.0\Application Tier\Web Services 中有一个由 TFS Web Services 使用的 web.config 文件。

您应该对其进行编辑并添加以下内容:

  <system.net>
    <defaultProxy>
    <proxy usesystemdefault="True" proxyaddress="http://swg.eu.myproxy.com:8080" bypassonlocal="True"/>
    </defaultProxy>
  </system.net>

设置此项,使我的新闻正确加载并且日志中不再有错误。

希望对您有所帮助!

马里奥