歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Linux系統入門學習:在wget中禁用HTTP轉發

Linux系統入門學習:在wget中禁用HTTP轉發

日期:2017/2/28 14:25:28   编辑:Linux教程

提問: 當我用wget獲取一個重定向到URL Y的URL X的時候,wget默認會自動獲取URL Y。然而我想要強制獲取不帶重定向的URL X。我該如何禁用wget重定向URL的功能。

在HTTP標准中,重定向響應(帶3XX的HTTP響應)說明請求的URL被移到了新的位置。重定向相應接著包含了目標重定向的URL。

像常規的HTTP客戶端,wget支持URL重定向(也叫URL轉發),意味著當你嘗試下載一個重定向的URL時,wget會自動跟隨URL重定向獲取重定向後的資源。如果你由於一些原因想要禁用URL重定向,並停止3XX的狀態碼,你可以使用wget的“--max-redirect=number”選項。這個選項用來指定最大(遞歸)重定向的數字,默認是20。

如果你想要禁用wget中的HTTP重定向,使用“--max-redirect=0”

  1. $ wget --max-redirect=0 http://www.aaa.com/a.html

  1. --2014-10-3123:08:58-- http://www.aaa.com/a.html
  2. Resolving aaa.com (aaa.com)...1.2.3.4
  3. Connecting to aaa.com (aaa.com)|1.2.3.4|:80... connected.
  4. HTTP request sent, awaiting response...301MovedPermanently
  5. Location: http://www.bbb.com/b.html [following]
  6. 0 redirections exceeded.

如你所見,當wget遇到HTTP重定向響應時,它不會跟著重定向,並以“0 redirections exceeded”(超出0次重定向)的錯誤信息停止。它同樣會顯示一個HTTP的狀態碼(比如301)。

注意一下curl,另外一個類似的HTTP客戶端,行為正好相反。默認上,curl並不會跟隨URL重定向。要強制使cutl重定向到一個URL,你要使用“-L”選項。

Linux wget命令詳解 http://www.linuxidc.com/Linux/2012-08/67837.htm

Linux 下使用 wget/aria2 進行離線迅雷批量下載 http://www.linuxidc.com/Linux/2011-10/46052.htm

Linux使用wget請求地址時報錯 http://www.linuxidc.com/Linux/2011-07/39345.htm

Linux下載命令wget使用詳解 http://www.linuxidc.com/Linux/2011-01/30980.htm

wget 使用大全 http://www.linuxidc.com/Linux/2008-09/15722.htm

Linux 命令行下載工具 wget 的使用技巧 http://www.linuxidc.com/Linux/2007-10/8293.htm

wget 命令實例 http://www.linuxidc.com/Linux/2014-10/108733.htm

Copyright © Linux教程網 All Rights Reserved