最近更换一台使用IIS的Web服务器时出现一个奇怪的问题。每次网页内容更新后都需要手动刷新一次,否则就无法看到更新的内容。一般来说,IIS服务器出现的一切奇怪问题很多都和帐号、文件权限等设置不正确有关。于是开始按照这个思路,就行检查。
首先检查Web服务器数据库的权限。发现数据库文件只有一个Administrator帐户的管理权限。而我这台服务器中的Administrator帐户其实没有任何权限,只是一个空帐户,实际的系统管理员是另外一个帐户。所以实际上数据库文件没有设置系统管理员帐户、System帐户的管理权限,同时也没有设置Internet来宾帐户的读写权限。根据需要设置正确的权限后再测试,发现问题没有解决。既然数据库文件存在权限问题,那么其他文件可能也有权限问题。于是有检查了网站的所有文件,发现全部文件都果真存在权限问题。所有的文件都只有Administrator这个空帐户的权限,其他帐户的权限都没有。根据需要设置每个文件和相应目录的权限后再测试,故障还是没有排除。
到这里陷入了困境,既然不是帐户和文件权限设置的问题,那么还有哪里会引起这样的故障呢?实在没法办法了,只好重新一一检查IIS服务器中网站设置。依次检查Internet信息服务中Web网站的各项属性,均没有发现可能引起这种故障的项目。既然Web网站的各项属性没有问题,那么接着检查Internet信息服务的全局属性设置(WWW服务主属性)。在服务项中有一个HTTP压缩项目,其中有一项“压缩应用程序文件”,这一项被选中。看到这一项突然茅塞顿开,原来问题出在这里。由于这一项被选中,IIS服务器不会自动为每个请求刷新数据。也就是说,每次ASP页面更新后,都需要手动刷新才能看到最新页面内容。
到这里,这个问题终于得到解决,不过处理的方法却走了一段弯路。看来,对于IIS服务器的故障,不能够以定式思维来考虑问题。不要出现什么问题都怀疑帐户、文件权限。