Ich möchte etwas mit wget
einem Proxy herunterladen :
HTTP Proxy: 127.0.0.1
Port: 8080
Der Proxy benötigt keinen Benutzernamen und kein Passwort.
Wie kann ich das machen?
Ich möchte etwas mit wget
einem Proxy herunterladen :
HTTP Proxy: 127.0.0.1
Port: 8080
Der Proxy benötigt keinen Benutzernamen und kein Passwort.
Wie kann ich das machen?
Antworten:
Für alle Benutzer des Systems über das /etc/wgetrc
oder für den Benutzer nur mit der ~/.wgetrc
Datei:
use_proxy=yes
http_proxy=127.0.0.1:8080
https_proxy=127.0.0.1:8080
oder über -e
Optionen nach der URL:
wget ... -e use_proxy=yes -e http_proxy=127.0.0.1:8080 ...
use_proxy=on
, nicht use_proxy=yes
. Funktioniert sonst gut.
on
oder off
, aber tatsächlich einen falschen Befehl versuchen: -e use_proxy=bnw
gibt wget: use_proxy: Invalid boolean ‘bnw’; use 'on' or 'off'.
while =yes
gibt keinen solchen Fehler, so dass es inoffiziell erlaubt zu sein scheint.
http_proxy=http://<user>:<password>@127.0.01:8080
und ebenfalls. Andernfalls müssen Sie diese möglicherweise explizit füttern, während Sie das wget aufrufen (siehe - askubuntu.com/a/429943/350255 )
Geben Sie die Befehlszeile ein:
$ export http_proxy=http://proxy_host:proxy_port
für authentifizierten Proxy,
$ export http_proxy=http://username:password@proxy_host:proxy_port
und dann laufen
$ wget fileurl
Verwenden Sie für https einfach https_proxy anstelle von http_proxy. Sie können diese Zeilen auch in Ihre ~ / .bashrc-Datei einfügen, damit Sie dies nicht jedes Mal ausführen müssen.
Die folgenden möglichen Konfigurationen befinden sich /etc/wgetrc
nur in Kommentar und Verwendung ...
# 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 verwendet Umgebungsvariablen, die in der Befehlszeile wie folgt funktionieren können:
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"
Nachdem ich viele Tutorials ausprobiert hatte, um mein Ubuntu 16.04 LTS hinter einem authentifizierten Proxy zu konfigurieren, funktionierte es mit den folgenden Schritten:
Bearbeiten /etc/wgetrc
:
$ sudo nano /etc/wgetrc
Kommentieren Sie diese Zeilen aus:
#https_proxy = http://proxy.yoyodyne.com:18023/
#http_proxy = http://proxy.yoyodyne.com:18023/
#ftp_proxy = http://proxy.yoyodyne.com:18023/
#use_proxy = on
Wechseln Sie http://proxy.yoyodyne.com:18023/
zuhttp://username:password@domain:port/
WICHTIG: Wenn es immer noch nicht funktioniert, überprüfen Sie, ob Ihr Passwort Sonderzeichen enthält, wie
#
,@
... Ist dies der Fall ist, sie zu entkommen (zum Beispiel ersetzenpassw@rd
mitpassw%40rd
).
In Ubuntu 12.x habe ich die folgenden Zeilen in $ HOME / .wgetrc hinzugefügt
http_proxy = http: // uname: passwd@proxy.blah.com: 8080
use_proxy = on
In meinem Ubuntu haben die folgenden Zeilen in $ HOME / .wgetrc den Trick gemacht!
http_proxy = http: // uname: passwd@proxy.blah.com: 8080
use_proxy = on
In Debian Linux kann wget so konfiguriert werden, dass ein Proxy sowohl über Umgebungsvariablen als auch über wgetrc verwendet wird. In beiden Fällen sind die Variablennamen, die für HTTP- und HTTPS-Verbindungen verwendet werden sollen
http_proxy=hostname_or_IP:portNumber
https_proxy=hostname_or_IP:portNumber
Beachten Sie, dass die Datei / etc / wgetrc Vorrang vor den Umgebungsvariablen hat. Wenn also auf Ihrem System ein Proxy konfiguriert ist und Sie versuchen, die Umgebungsvariablen zu verwenden, scheinen diese keine Auswirkungen zu haben!
export http_proxy=http://proxy_host:proxy_port/
export https_proxy=https://proxy_host:proxy_port/
oder
export http_proxy=http://username:password@proxy_host:proxy_port/
export https_proxy=https://username:password@proxy_host:proxy_port/
Wie alle anderen hier erläutert, hilft diese Umgebungsvariable bei der Weitergabe von Proxys.
Hinweis: Bitte beachten Sie jedoch, dass das Kennwort, wenn es ein Sonderzeichen enthält, als konfiguriert werden muss %<hex_value_of_special_char>
.
Beispiel: Wenn das Kennwort lautet pass#123
, muss es wie pass%23123
in den obigen Exportbefehlen verwendet werden.
Wenn Sie wget nur einmal mit dem Proxy ausführen müssen, ist es am einfachsten, dies mit einem Einzeiler wie dem folgenden zu tun:
http_proxy=http://username:password@proxy_host:proxy_port wget http://fileurl
oder mit einer https-Ziel-URL:
https_proxy=http://username:password@proxy_host:proxy_port wget https://fileurl
Fügen Sie die folgenden Zeilen in der Datei ~ / .wgetrc oder / etc / wgetrc hinzu (erstellen Sie die Datei, wenn sie nicht vorhanden ist):
http_proxy = http://[Proxy_Server]:[port]
https_proxy = http://[Proxy_Server]:[port]
ftp_proxy = http://[Proxy_Server]:[port]
Weitere Informationen finden Sie unter https://www.thegeekdiary.com/how-to-use-wget-to-download-file-via-proxy/