Saya ingin mengunduh sesuatu dengan wget
menggunakan proxy:
HTTP Proxy: 127.0.0.1
Port: 8080
Proksi tidak perlu nama pengguna dan kata sandi.
Bagaimana saya bisa melakukan ini?
Saya ingin mengunduh sesuatu dengan wget
menggunakan proxy:
HTTP Proxy: 127.0.0.1
Port: 8080
Proksi tidak perlu nama pengguna dan kata sandi.
Bagaimana saya bisa melakukan ini?
Jawaban:
Untuk semua pengguna sistem melalui /etc/wgetrc
atau untuk pengguna hanya dengan ~/.wgetrc
file:
use_proxy=yes
http_proxy=127.0.0.1:8080
https_proxy=127.0.0.1:8080
atau melalui -e
opsi yang ditempatkan setelah URL:
wget ... -e use_proxy=yes -e http_proxy=127.0.0.1:8080 ...
use_proxy=on
, bukan use_proxy=yes
. Jika tidak, berfungsi dengan baik.
on
atau off
, tetapi sebenarnya mencoba perintah palsu: -e use_proxy=bnw
memberi wget: use_proxy: Invalid boolean ‘bnw’; use 'on' or 'off'.
sementara =yes
tidak memberikan kesalahan seperti itu, sehingga tampaknya tidak diizinkan secara resmi.
http_proxy=http://<user>:<password>@127.0.01:8080
dan juga. jika tidak, Anda mungkin harus memberi ini secara eksplisit saat memanggil wget (lihat - askubuntu.com/a/429943/350255 )
Ketikkan baris perintah:
$ export http_proxy=http://proxy_host:proxy_port
untuk proxy yang dikonfirmasi,
$ export http_proxy=http://username:password@proxy_host:proxy_port
dan kemudian jalankan
$ wget fileurl
untuk https, cukup gunakan https_proxy alih-alih http_proxy. Anda juga bisa meletakkan baris-baris ini di file ~ / .bashrc Anda sehingga Anda tidak perlu melakukan ini setiap saat.
konfigurasi yang mungkin berikut ini terletak /etc/wgetrc
hanya dalam tanda komentar dan gunakan ...
# 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 menggunakan variabel lingkungan, sesuatu seperti ini di baris perintah dapat berfungsi:
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"
Setelah mencoba banyak tutorial untuk mengonfigurasi Ubuntu 16.04 LTS saya di belakang proxy yang diautentikasi, ia bekerja dengan langkah-langkah ini:
Edit /etc/wgetrc
:
$ sudo nano /etc/wgetrc
Batalkan komentar pada baris ini:
#https_proxy = http://proxy.yoyodyne.com:18023/
#http_proxy = http://proxy.yoyodyne.com:18023/
#ftp_proxy = http://proxy.yoyodyne.com:18023/
#use_proxy = on
Ubah http://proxy.yoyodyne.com:18023/
kehttp://username:password@domain:port/
PENTING: Jika masih tidak bekerja, cek jika password Anda memiliki karakter khusus, seperti
#
,@
, ... Jika hal ini terjadi, melarikan diri mereka (misalnya, gantipassw@rd
denganpassw%40rd
).
Di Ubuntu 12.x, saya menambahkan baris berikut di $ HOME / .wgetrc
http_proxy = http: // uname: passwd@proxy.blah.com: 8080
use_proxy = on
Di ubuntu saya, mengikuti baris-baris dalam $ HOME / .wgetrc berhasil!
http_proxy = http: // uname: passwd@proxy.blah.com: 8080
use_proxy = on
Dalam Debian Linux, wget dapat dikonfigurasi untuk menggunakan proxy baik melalui variabel lingkungan dan melalui wgetrc. Dalam kedua kasus, nama variabel yang akan digunakan untuk koneksi HTTP dan HTTPS adalah
http_proxy=hostname_or_IP:portNumber
https_proxy=hostname_or_IP:portNumber
Perhatikan bahwa file / etc / wgetrc didahulukan dari variabel lingkungan, maka jika sistem Anda memiliki proxy yang dikonfigurasi di sana dan Anda mencoba menggunakan variabel lingkungan, mereka tampaknya tidak akan berpengaruh!
export http_proxy=http://proxy_host:proxy_port/
export https_proxy=https://proxy_host:proxy_port/
atau
export http_proxy=http://username:password@proxy_host:proxy_port/
export https_proxy=https://username:password@proxy_host:proxy_port/
Seperti yang dijelaskan semua orang di sini, variabel lingkungan ini membantu meneruskan proxy.
Catatan: Tapi tolong jangan bahwa jika kata sandi berisi karakter khusus maka itu perlu dikonfigurasi sebagai %<hex_value_of_special_char>
.
Contoh: Jika kata sandi itu pass#123
, perlu digunakan seperti pass%23123
dalam perintah ekspor di atas.
Jika Anda perlu menjalankan wget sekali saja dengan proxy, cara termudah adalah melakukannya dengan one-liner seperti ini:
http_proxy=http://username:password@proxy_host:proxy_port wget http://fileurl
atau dengan URL target https:
https_proxy=http://username:password@proxy_host:proxy_port wget https://fileurl
Tambahkan baris di bawah ini dalam file ~ / .wgetrc atau / etc / wgetrc (buat file jika tidak ada):
http_proxy = http://[Proxy_Server]:[port]
https_proxy = http://[Proxy_Server]:[port]
ftp_proxy = http://[Proxy_Server]:[port]
Untuk informasi lebih lanjut, https://www.thegeekdiary.com/how-to-use-wget-to-download-file-via-proxy/