我遇到过几个网站,用户的初次访问会导致http-equiv刷新到另一个(通常是胡言乱语) url,然后该url立即将(302)重定向到另一个垃圾url,而后者又会立即重定向到第四个url,该url实际上显示了该站点的登陆页面。
我的问题是:搞什么鬼?为什么服务器会被设置成这样呢?
下面列出了几个这样做的站点:
纽约州图书馆- http://nysl.nysed.gov
发布于 2011-01-14 01:49:33
原因之一是实际的内容存储在一个只有通过一个尴尬的URL方案(想想http://en.wikipedia.org/w/index.php?title=Cookie)才能到达的CMS中。
当您无法控制when服务器(通过.htaccess、PHP header()或其他方式)首先发出302时,就会使用http-equiv重定向。
网站在历史上也在增长,人们懒得更新链接。考虑到A,B,C页,A是对B的重定向。现在,一些重大事件发生了(比如,产品过时了),而网站管理员只是将B重定向到C。现在A基本上是对C的双重间接。这就是事情可以积累的方式。特别是如果您有很多类似于A的页面,更新它们以指向C可能会很费时。
除此之外,基本情况是管理员无法亲自设置幕后URL重写。(可以通过更简单的http://en.wikipedia.org/wiki/Cookie访问该页面。)
或者可能是IIS没有像mod_rewrite那样聪明的东西。
无论哪种方式,在主页面上都没有理由进行不止一次重定向。特别是因为浏览器可能会在几次重定向之后停止,即使没有循环。
https://stackoverflow.com/questions/4686529
复制相似问题