背景:我有 TP-Link Archer D7 路由器,它使用本地网页进行配置。我想使用 wget 自动下载两个给定的页面(作为日常预防措施,以检查配置是否被某人更改)——为此,我需要直接给定的页面地址。
有些页面始终显示主地址,尽管它们内部在各个页面之间导航。问题是,您无法转到页面 X,因为即使您在页面 X,URL 也会显示您在主页。
我的情况是这样的,我正在查看路由器的高级状态页面,但 URL 仍然显示http://192.168.1.1/
(路由器主页)。因此,例如,如果我将此 URL 复制并粘贴到另一个选项卡,我将获得主页,而不是状态。我(使用 firebug)查看了切换到状态页面时获取了哪个页面 -- http://192.168.1.1/main/status.htm?_=1442919208105
。但是,当我在 URL 框中输入此页面时,我收到错误403 Forbidden
。这不是身份验证问题,因为它是同一个浏览器。
我的问题是——我错过了什么?我应该怎么做才能使用直接 URL?
答案1
如果您意外收到 403 HTTP 响应,则 Web 服务器可能正在检查某些标头。因此,您应该检查是否使用了正确的 HTTP 标头。您可以使用 Web 浏览器插件执行此操作,例如篡改数据对于 Firefox 或标题黑客适用于 Google Chrome。
HTTP GET 请求和响应示例:
5:40:08.691[72ms][total 72ms] Status: 302[Moved Temporarily]
GET http://192.168.1.1/9 Load Flags[LOAD_DOCUMENT_URI LOAD_INITIAL_DOCUMENT_URI ] Content Size[-1] Mime Type[text/html]
Request Headers:
Host[192.168.1.1]
User-Agent[Mozilla/5.0]
Accept[text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8]
Accept-Language[en-US,en;q=0.5]
Accept-Encoding[gzip, deflate]
Referer[http://192.168.1.1/]
Cookie[session_id=1]
Connection[keep-alive]
Response Headers:
Content-Type[text/html]
Cache-Control[public]
Pragma[cache]
Expires[Tue, 22 Sep 2015 13:10:12 GMT]
Date[Tue, 22 Sep 2015 12:40:12 GMT]
Last-Modified[Tue, 22 Sep 2015 12:40:12 GMT]
Accept-Ranges[bytes]
Connection[close]
Location[/page9]