Каков правильный синтаксис команды wget для HTTPS с именем пользователя и паролем?

Я хотел бы загрузить файл удаленно с этим URL-адресом, используя wget:

https://test.mydomain.com/files/myfile.zip

Для сайта test.mydomain.com требуется логин. Я хотел бы загрузить этот файл на другом сервере с помощью этой команды, но он не работает (не полностью загружает файл):

wget --user=myusername --password=mypassword https://test.mydomain.com/files/myfile.zip

Если мое имя пользователя - myusername, а пароль - mypassword, то какой будет правильный синтаксис wget?

Ниже приведены возвращаемые сообщения после ввода следующей команды:

Resolving test.mydomain.com (test.mydomain.com)... 123.456.789
Connecting to test.mydomain.com (test.mydomain.com)|123.456.789|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://test.mydomain.com/login/unauthorized [following]
--2013-01-30 02:01:32--  https://test.mydomain.com/login/unauthorized
Reusing existing connection to test.mydomain.com:443.
HTTP request sent, awaiting response... 302 Found
Location: https://test.mydomain.com/login [following]
--2013-01-30 02:01:32--  https://test.mydomain.com/login
Reusing existing connection to test.mydomain.com:443.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [text/html]
Saving to: `myfile.zip'

Я что-то упустил? Пожалуйста помоги. Спасибо.

+23
источник поделиться
3 ответа

Задав опцию --user и -ask-password, wget запросит учетные данные. Ниже приведен пример. Измените имя пользователя и ссылку для загрузки на свои нужды.

wget --user=username --ask-password https://xyz.com/changelog-6.40.txt
+43
источник

Я обнаружил, что wget неправильно проверяет подлинность с некоторыми серверами, возможно, потому, что он соответствует только HTTP 1.0. В таких случаях завиток (который соответствует HTTP 1.1) обычно выполняет трюк:

curl -o <filename-to-save-as> -u <username>:<password> <url>

+13
источник

Это не то, что ваш файл частично загружен. Он не выполняет проверку подлинности и, следовательно, загружает, например, "index.html", но он называет его myfile.zip(так как это то, что вы хотите загрузить).

Я следил за ссылкой, предложенной @thomasbabuj, и в конце концов понял ее.

Вы должны попробовать добавить --auth-no-challenge и как @thomasbabuj предложил заменить вашу запись пароля

то есть

wget --auth-no-challenge --user=myusername --ask-password https://test.mydomain.com/files/myfile.zip
+4
источник

Посмотрите другие вопросы по метке или Задайте вопрос