为什么搜索引擎来索取网站首页时服务器却返回错误代码302

solotarn 2003-08-23 05:08:18
我的web服务器是tomcat 4.1.8 standalone,当robot爬的时候,申请首页时,tomcat
中返回302的错误代码,而用浏览器则正常,哪位大虾知道原因?

还有http RFC 对302 的解释是:The requested resource resides temporarily under a different URI.不知什么意思。
...全文
174 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
solotarn 2003-08-30
  • 打赏
  • 举报
回复
我找到原因了,当tomcat接收到没有路径的url时(也即只有域名),和大多数的服务器一样,它会重定向到index.html,index.jsp等文件,但问题是,他这个重定向是在客户端而非服务器端进行(只给一个302 status code和一个重定向的url), 而搜索引擎是不理会重定向的,浏览器则相反。
  下面有详细的介绍,不过解决方法人家要卖关子,需要hosting partner,咳!!!。
    
  http://www.nameonthe.net/resources/tomcat302test.jsp

没有办法,只有自己动手改源码了,找到org.apache.catalina.servlets.DefaultServlet.java 的serverResource方法,找到它的重顶向的语句是sendRecirect(),于是就把它改为request.getRequestDispather(redirect path).forward(request,response)。这样虽然解决了重定向的问题,但随之问题也来了,当客户端为:Mozilla/4.0 (compatible; MSIE 5.5; Windows 98),且请求的http版本为1.1时,虽然tomcat返回的代码为200(成功),但发送的字节数却有长有短。且log文件显示有错误,说是software caused connection abort:socket write error at java.net.SocketOutputStream.socketWrite0(Native Method).....

有没有哪位高手碰到此问题了,我可是黔驴计穷了.

81,095

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧