Я хочу скачать что-нибудь с 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 ...
Введите в командной строке:
$ export http_proxy=http://proxy_host:proxy_port
для аутентифицированного прокси,
$ export http_proxy=http://username:[email protected]_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:[email protected]:port/
ВАЖНО: если он все еще не работает, проверьте, есть ли у вашего пароля специальные символы, такие как
#
,@
,... Если это так, убегите от них (например, замените[email protected]
сpassw%40rd
).
В Ubuntu 12.x я добавил следующие строки в $HOME/.wgetrc
http_proxy = http://uname:[email protected]:8080
use_proxy = on
В Debian Linux wget может быть настроен на использование прокси-сервера как через переменные среды, так и через wgetrc. В обоих случаях имена переменных, которые будут использоваться для HTTP и HTTPS-соединений, это
http_proxy=hostname_or_IP:portNumber
https_proxy=hostname_or_IP:portNumber
Обратите внимание, что файл /etc/wgetrc имеет приоритет над переменными среды, поэтому если ваша система имеет прокси-сервер, настроенный там, и вы пытаетесь использовать переменные окружения, они, похоже, не будут иметь эффекта!
В моей ubuntu следующие строки в $HOME/.wgetrc сделали трюк!
http_proxy = http://uname:[email protected]:8080
use_proxy = on
export http_proxy=http://proxy_host:proxy_port/
export https_proxy=https://proxy_host:proxy_port/
или
export http_proxy=http://username:[email protected]_host:proxy_port/
export https_proxy=https://username:[email protected]_host:proxy_port/
Как объяснили все остальные, эти переменные среды помогают передавать прокси.
Примечание: Но, пожалуйста, помните, что если пароль содержит какой-либо специальный символ, его необходимо настроить как %<hex_value_of_special_char>
.
Пример: Если пароль pass#123
, его необходимо использовать как pass%23123
в приведенных выше командах экспорта.
В Windows - для Fiddler говорят - используя переменные среды:
set http_proxy=http://127.0.0.1:8888
set https_proxy=http://127.0.0.1:8888
Если вам нужно выполнить wget только один раз с прокси-сервером, проще всего сделать это с помощью одной строки:
http_proxy=http://username:[email protected]_host:proxy_port wget http://fileurl
или с целевым URL-адресом https:
https_proxy=http://username:[email protected]_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/