我正在尝试使用 wget 获取一个链接,这个 wget 在我的本地机器上运行良好,但在服务器上却不行。我尝试检查响应头,并在本地笔记本电脑上得到了以下信息
curl -I http://en.cihan.com.tr/rss?user=albawaba\&type=12 HTTP/1.0 200 正常 服务器:Apache-Coyote/1.1 X-Powered-By:Servlet 2.4;JBoss-4.2.2.GA(构建:SVNTag=JBoss_4_2_2_GA date=200710221139)/Tomcat-5.5 设置 Cookie:JSESSIONID=E65E0CC7CF956F45962FD8571F3AB02A;路径=/ 内容类型:application/xml;charset=UTF-8 内容长度:80043 日期:2012 年 3 月 29 日星期四 12:19:26 GMT 设置 Cookie:NSC_fo-sv-bs.djibo.dpn.us=ffffffff092a094245525d5f4f58455e445a4a4229a0;expires=Thu, 29-Mar-2012 12:20:51 GMT;path=/ X-Cache:比拉尔的 MISS 连接:关闭
在服务器上我得到了
curl -I http://en.cihan.com.tr/rss?user=albawaba\&type=12 HTTP/1.1 302 暂时移动 服务器:Apache-Coyote/1.1 X-Powered-By:Servlet 2.4;JBoss-4.2.2.GA(构建:SVNTag=JBoss_4_2_2_GA date=200710221139)/Tomcat-5.5 设置 Cookie:JSESSIONID=CCB29F3789ED06C505436F1289A122D4;路径=/ 地址:http://en.cihan.com.tr/rssAlert 内容类型:text/xml;charset=UTF-8 内容长度:0 日期:2012 年 3 月 29 日星期四 12:11:33 GMT 设置 Cookie:NSC_fo-sv-bs.djibo.dpn.us=ffffffff092a094245525d5f4f58455e445a4a4229a0;expires=Thu, 29-Mar-2012 12:12:58 GMT;path=/
知道为什么对于同一个链接,我的笔记本电脑收到的响应是 200,而服务器上收到的响应却是 302 吗?
答案1
您被重定向到的页面显示“您无权访问此页面!”。
这只不过是一个猜测,但我认为他们正在进行依赖 IP 的内容限制,并且您的笔记本电脑位于允许的位置,而您的服务器则不在。
我自己尝试了相同的 URL,结果从英国的两个不同地点和法国的一个地点获得了 302 重定向。我收到了来自 Amazon EC2 服务器的连接超时。
奇怪的是,他们使用 302 重定向到错误页面,而不是简单地使用适当的 HTTP 响应代码(例如 403 或 401)提供错误页面。
答案2
...因为服务器根据源 IP 做出不同的响应?
我们如何知道您在服务器上运行的某些东西的答案?