Я хочу скачать что-то с wget
использованием прокси:
HTTP Proxy: 127.0.0.1
Port: 8080
Прокси не требует имени пользователя и пароля.
Как я могу это сделать?
Я хочу скачать что-то с wget
использованием прокси:
HTTP Proxy: 127.0.0.1
Port: 8080
Прокси не требует имени пользователя и пароля.
Как я могу это сделать?
Ответы:
Для всех пользователей системы через /etc/wgetrc
или для пользователя только с ~/.wgetrc
файлом:
use_proxy=yes
http_proxy=127.0.0.1:8080
https_proxy=127.0.0.1:8080
или через -e
параметры, размещенные после URL:
wget ... -e use_proxy=yes -e http_proxy=127.0.0.1:8080 ...
use_proxy=on
, нет use_proxy=yes
. Хорошо работает в противном случае.
on
или off
, но на самом деле попытка фиктивной команды: -e use_proxy=bnw
дает, wget: use_proxy: Invalid boolean ‘bnw’; use 'on' or 'off'.
пока не =yes
дает такой ошибки, так что, кажется, это неофициально разрешено.
http_proxy=http://<user>:<password>@127.0.01:8080
и аналогично. в противном случае вам, возможно, придется явным образом кормить их во время вызова wget (см. - askubuntu.com/a/429943/350255 )
Введите в командной строке:
$ export http_proxy=http://proxy_host:proxy_port
для аутентифицированного прокси,
$ export http_proxy=http://username:password@proxy_host:proxy_port
а потом беги
$ wget fileurl
для https просто используйте https_proxy вместо http_proxy. Вы также можете поместить эти строки в файл ~ / .bashrc, чтобы вам не приходилось выполнять это каждый раз.
следующие возможные конфиги находятся в /etc/wgetrc
раскомментированном виде и используются ...
# You can set the default proxies for Wget to use for http, https, and ftp.
# They will override the value in the environment.
#https_proxy = http://proxy.yoyodyne.com:18023/
#http_proxy = http://proxy.yoyodyne.com:18023/
#ftp_proxy = http://proxy.yoyodyne.com:18023/
# If you do not want to use proxy at all, set this to off.
#use_proxy = on
wget использует переменные окружения, что-то вроде этого в командной строке может работать:
export http_proxy=http://your_ip_proxy:port/
export https_proxy=$http_proxy
export ftp_proxy=$http_proxy
export dns_proxy=$http_proxy
export rsync_proxy=$http_proxy
export no_proxy="localhost,127.0.0.1,localaddress,.localdomain.com"
После многих попыток настроить Ubuntu 16.04 LTS на аутентифицированном прокси-сервере, он работал со следующими шагами:
Редактировать /etc/wgetrc
:
$ sudo nano /etc/wgetrc
Раскомментируйте эти строки:
#https_proxy = http://proxy.yoyodyne.com:18023/
#http_proxy = http://proxy.yoyodyne.com:18023/
#ftp_proxy = http://proxy.yoyodyne.com:18023/
#use_proxy = on
Изменить http://proxy.yoyodyne.com:18023/
наhttp://username:password@domain:port/
ВАЖНО: Если она по- прежнему не работает, проверьте , если ваш пароль имеет специальные символы, такие как
#
,@
... Если это так, то избавиться от них (например, заменитьpassw@rd
сpassw%40rd
).
В Ubuntu 12.x я добавил следующие строки в $ HOME / .wgetrc
http_proxy = http: // uname: passwd@proxy.blah.com: 8080
use_proxy = вкл
В моем Ubuntu следующие строки в $ HOME / .wgetrc сделали свое дело!
http_proxy = http: // uname: passwd@proxy.blah.com: 8080
use_proxy = вкл
В Debian Linux wget может быть настроен на использование прокси как через переменные окружения, так и через wgetrc. В обоих случаях имена переменных, которые будут использоваться для соединений HTTP и HTTPS,
http_proxy=hostname_or_IP:portNumber
https_proxy=hostname_or_IP:portNumber
Обратите внимание, что файл / etc / wgetrc имеет приоритет над переменными окружения, поэтому, если в вашей системе настроен прокси-сервер и вы пытаетесь использовать переменные окружения, они, похоже, не имеют никакого эффекта!
export http_proxy=http://proxy_host:proxy_port/
export https_proxy=https://proxy_host:proxy_port/
или
export http_proxy=http://username:password@proxy_host:proxy_port/
export https_proxy=https://username:password@proxy_host:proxy_port/
Как все остальные объяснили здесь, эти переменные среды помогают передавать прокси.
Примечание: но, пожалуйста, помните, что если пароль содержит какой-либо специальный символ, его необходимо настроить как %<hex_value_of_special_char>
.
Пример: если пароль pass#123
, необходимо использовать как pass%23123
в приведенных выше командах экспорта.
Если вам нужно выполнить wget только один раз с прокси, самый простой способ - это сделать с помощью одной строки:
http_proxy=http://username:password@proxy_host:proxy_port wget http://fileurl
или с целевым URL-адресом https:
https_proxy=http://username:password@proxy_host:proxy_port wget https://fileurl
Добавьте следующие строки в файл ~ / .wgetrc или / etc / wgetrc (создайте файл, если его там нет):
http_proxy = http://[Proxy_Server]:[port]
https_proxy = http://[Proxy_Server]:[port]
ftp_proxy = http://[Proxy_Server]:[port]
Для получения дополнительной информации, https://www.thegeekdiary.com/how-to-use-wget-to-download-file-via-proxy/