tfs 文档 报表 红叉
转自:http://www.cnblogs.com/gaomartin/articles/1108130.html
自从使用了VSTS,访问TFS时"文档"和"报告"出现小红叉,就是这个问题与我结下了不解之缘,一直没有解决!于是乎我就在博问上发表了“关于TFS中,windows帐户配置问题 ” ,悬赏分5分;等了许久许久,没有人给予答复;本人在博客圆安家不久,人生地不熟。好心的兄弟给我顶了一贴.......... 最后在问题将要过期的前一分钟,很无奈地把它关闭了。
这时候我想到了微软的TFS讲师王然,于是发Email求助。内容如下:
"王老师,您好.我最近学TFS,看了您的教程.现在遇到一个TFS设置的问题,我装的是单服务器模式.已为要使用的windows帐户配置了wss和report services的查看权限,在装有TFS的服务器上,也就是本地机器上,测试“文档”和“报告”是可以连上的。但是在别的机器上用同样的windows帐户登陆之后。“文档”和“报告”却是带小红叉的。就是说没有连上,多次刷新无效。断开连接,重新连接也不行。关闭本地防火墙也不行。不知道是什么原因,网上找了找。无结果。请问这是怎么回事啊? "
王然讲师的答复:
在工作组的环境下,需要使用同名同密码的策略,也就是说:在客户端也要建立和服务器上相同的用户名和密码,然后使用这个用户登录,然后再连接就可以了。
结果不容乐观,我的问题依旧没有解决。就再次发了Email:
您好!
我这里使用的是同一个局域网的.我在自己的机器上创建了一个和服务器一样的用户---如:用户:Test,密码:123;然后我用Administrator用户连接服务器,报表和文档连接失败;重启,再次尝试连接.依然没有成功;接着注销了Administrator用户,用Test用户登录,然后再次连接,报表和文档还是显示一个小红叉.不知道是何种原因?您能给分析一下吗?谢谢...............
再次得到的答复:
服务器上你用哪个用连没有问题,在客户端就用哪个用户登录。肯定是没有问题的。像你说的:在服务器和客户端建一个test 123用户,这个用户在服务器上连接没有问题,在客户端就没有问题。就用一个用户,和administrator没有关系。如果你在服务器上是用administrator连接的,那在客户端也用administrator(同密码)登录,连接服务器,肯定没有问题。
看起来没有办法了。问题就这样到了今天.......................................
网上关于TFS的东西很少,有时候还能在英文网站上找些..................
给大家发这么多没用的信息,实在抱歉,只是想抒发一下问题所带来的影响;
就在今天,新的项目刚放上去不久,一个兄弟再次提到了这个问题。于是不得不再次探讨。但就在这个时候,我的“文档”和“报告”的小红叉却莫名其妙的消失了。郁闷之时。去寻找原因,最终还是没有找到。在做了多次测试后,把问题锁定到了"DNS"解析问题上。在工作组里只有两个人的“文档”和“报告”能连接到TFS上。同时在cmd 命令行里输入“ping pcserver"(pcserver是TFS服务器,安装配置情况在“关于TFS中,windows帐户配置问题 ”已有说明)可以正常解析;在“文档”和“报告”连接不上的机器上会出现“找不到pcserver” 的相关提示。
于是就找到了“C:\WINDOWS\system32\drivers\etc”这个路径下的“hosts”文件,注意这个文件是没有扩展名的(如果你安装了MSN的话,会出现一个"hosts.msn"的文件,和"hosts"文件内容相同),这个文件可以直接用记事本打开。这是你会在最后一行看到“127.0.0.1 localhost”(我的机器用的是win2003的系统),前面加"#"的是说明;这时候你可以在“localhost”后面敲回车。在另一行写入“TFS服务器IP TFS服务器名字”;在两者中间用空格分开就可以了。这时候你再次连接TFS服务器的时候,就会发现那个“可爱”的小红叉已经不见了;
下面来介绍一下,这样做的原因:
一、Hosts文件的位置
Window系统中有个Hosts文件(没有后缀名),在Windows 98系统下该文件在Windows文件夹。在Windows 2000/XP/Vista系统中位于\%Systemroot%\System32\Drivers\Etc 文件夹中,其中,%Systemroot%指系统安装路径。例如,Windows XP 安装在C:\WINDOWS,那么Hosts文件就在C:\WINDOWS\system32\drivers\etc中。 你也可以用windows自带的查找功能搜索找到hosts文件。 该文件其实是一个纯文本的文件,用普通的文本编辑软件如记事本等都能打开和编辑。
二、Hosts文件的基本内容
用记事本打开hosts文件,就可以看见了微软对这个文件的说明。Hosts文件文一般有如下面的基本内容:
# Copyright (c) 1993-1999 Microsoft Corp.
#
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
# This file contains the mappings of IP addresses to host names. Each
# entry should be kept on an individual line. The IP address should
# be placed in the first column followed by the corresponding host name.
# The IP address and the host name should be separated by at least one
# space.
#
# Additionally, comments (such as these) may be inserted on individual
# lines or following the machine name denoted by a '#' symbol.
#
# For example:
#
# 102.54.94.97 rhino.acme.com # source server
# 38.25.63.10 x.acme.com # x client host
127.0.0.1 localhost
这个文件是根据TCP/IP for Windows 的标准来工作的。它的作用是定义IP地址和Host name(主机名)的映射关系,是一个映射IP地址和Host name (主机名) 的规定。这个规定中,要求每段只能包括一个映射关系,也就是一个IP地址和一个与之有映射关系的主机名。 IP地址要放在每段的最前面,映射的Host name(主机名)在IP后面,中间用至少一个空格分隔。对于这段的映射说明,用“#”分割后用文字说明。
三、Hosts文件的工作方式
我们知道在网络上访问网站,要首先通过DNS服务器把要访问的网络域名(XXXX.com)解析成XXX.XXX.XXX.XXX的IP地址后,计算机才能对这个网络域名作访问。要是对于每个域名请求我们都要等待域名服务器解析后返回IP信息,这样访问网络的效率就会降低,因为DNS做域名解析和返回IP都需要时间。
为了提高对经常访问的网络域名的解析效率,可以通过利用Hosts文件中建立域名和IP的映射关系来达到目的。根据Windows系统规定,在进行DNS请求以前,Windows系统会先检查自己的Hosts文件中是否有这个网络域名映射关系。如果有则,调用这个IP地址映射,如果没有,再向已知的DNS服务器提出域名解析。也就是说Hosts的请求级别比DNS高。
最后要指出的是,Hosts文件配置的映射是静态的,如果TFS服务器更改了IP请及时更新客户端的IP地址,否则将不能访问。
我的特殊情况:
我的TFS也遇到了上面的问题,起初也怀疑是机器名解析问题,但是改了HOST也没见效果;然后我发现一个细节,那就是我将CHROM设置为了默认浏览器,导致VS加载报表和文档的时候不能验证账号和密码,也就出现了红叉;
然后我将项目主页在IE中打开,然后IE提示我输入账号和密码,我选择保存密码,然后再回到VS中,红叉消失了!
希望遇到和我一样问题的朋友能有帮助!