WGET 401 Несанкционированный - PullRequest
11 голосов
/ 09 февраля 2012

Я пытаюсь использовать командный файл с WGET для загрузки общедоступного файла FCC отсюда

http://wireless.fcc.gov/uls/data/complete/l_micro.zip

Когда я запускаю пакетный файл с параметрами

wget --server-response -owget.log http://wireless.fcc.gov/uls/data/complete/l_micro.zip 

Сбой с несанкционированной ошибкой HTTP 401. Я могу повторить попытку в этот момент, и он продолжает терпеть неудачу. Однако я заметил, что если я открою IE, начну загрузку и откажусь при появлении запроса на сохранение, я смогу повторно запустить пакетный файл, и он отлично выполнится!

Вот мой подробный ответ сервера из журнала

--2012-02-06 14:32:24--  http://wireless.fcc.gov/uls/data/complete/l_micro.zip
Resolving wireless.fcc.gov (wireless.fcc.gov)... 192.104.54.158
Connecting to wireless.fcc.gov (wireless.fcc.gov)|192.104.54.158|:80... connected.
HTTP request sent, awaiting response... 
  HTTP/1.1 302 Found
  Location: REMOVED - appears to have my IP
  Cache-Control: no-cache
  Pragma: no-cache
  Content-Type: text/html; charset=utf-8
  Connection: close
  Content-Length: 513
Location: REMOVED [following]
--2012-02-06 14:32:24--  REMOVED
Resolving REMOVED... 192.168.2.11
Connecting to REMOVED|192.168.2.11|:80... connected.
HTTP request sent, awaiting response... 
  HTTP/1.1 401 Unauthorized
  Cache-Control: no-cache
  Pragma: no-cache
  WWW-Authenticate: NTLM
  WWW-Authenticate: BASIC realm="AD_BCAAA"
  Content-Type: text/html; charset=utf-8
  Proxy-Connection: close
  Set-Cookie: BCSI-CS-8ECFB6B4AA642EF0=2; Path=/
  Connection: close
  Content-Length: 575
Authorization failed.

Вот журнал после выполнения моей маленькой процедуры IE и запуска его на работу

--2012-02-08 15:52:43--  http://wireless.fcc.gov/uls/data/complete/l_micro.zip
Resolving wireless.fcc.gov (wireless.fcc.gov)... 192.104.54.158
Connecting to wireless.fcc.gov (wireless.fcc.gov)|192.104.54.158|:80... connected.
HTTP request sent, awaiting response... 
  HTTP/1.1 200 OK
  Server: Sun-Java-System-Web-Server/7.0
  Date: Fri, 27 Jan 2012 18:37:51 GMT
  Content-type: application/zip
  Last-modified: Sun, 22 Jan 2012 11:18:09 GMT
  Etag: "46fa95c-4f1bf071"
  Accept-ranges: bytes
  Content-length: 74426716
  Connection: Keep-Alive
  Age: 1045014
Length: 74426716 (71M) [application/zip]
Saving to: `l_micro.zip'

Любая помощь приветствуется!

Ответы [ 7 ]

26 голосов
/ 20 марта 2013

Если на сайте есть просто настройка htpassword, вы можете попробовать:

wget --user=admin --ask-password https://www.yourwebsite.com/file.zip
9 голосов
/ 09 февраля 2012

В вашей сети есть защищенный веб-шлюз Blue Coat , о чем свидетельствует строка в ответе:

Set-Cookie: BCSI-CS-8ECFB6B4AA642EF0=2; Path=/

Похоже, он хочет, чтобы вы проходили аутентификацию, предположительно, с использованием учетных данных вашего домена. Попробуйте передать их с --http-user и --http-passwd.

7 голосов
/ 30 июля 2015

Я использовал --auth-no-challenge, и точная ошибка была решена.

2 голосов
/ 20 апреля 2014

У меня была похожая проблема с сайтом на основе xwiki. после нескольких попыток я нашел комбинацию, которая отлично сработала для меня

wget --no-check-Certificate --auth-no-challenge -k -nc -p -l 1 -r https://user:password@host.domain

Я думаю, что ключ был --auth-no-challenge

1 голос
/ 17 июля 2018

Попробуйте использовать это расширение для Firefox. Он генерирует команду wget или curl, которую можно скопировать и запустить из bash.

1 голос
/ 13 марта 2017

Я пришел сюда, пытаясь выяснить, почему wget выдавал 401 несанкционированное сообщение, когда в другой системе проблема не возникала.

После установки более поздней версии wget из исходного кода (двоичный файл не был доступен в моем дистрибутиве) он работал.Я не могу объяснить, почему, за исключением того, что это должна быть какая-то ошибка, поэтому, если ни один из вышеперечисленных не решит вашу проблему, рассмотрите возможность обновления wget.

0 голосов
/ 09 февраля 2012

Попробуйте установить строку пользовательского агента с помощью wget - например,

--user-agent=Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)  

вполне возможно, чтобы сайт отклонял запросы от определенных пользовательских агентов, особенно если они пытаются обойти "обычные" маршруты кинформация (например, через веб-страницы).

Хотя это не объясняет вашу проблему, в любом случае это хорошая идея.Возможно, на сайте реализован механизм, посредством которого, когда вы просматриваете «известный» браузер (например, IE), он затем кэширует ваш IP как «безопасный», а затем позволяет любому пользовательскому агенту с вашего IP загружать что угодно:)

...