HTTP proxy için kullanıcı adı / parolada özel karakterler nasıl kullanılır?


26

Windows makinesinde bir HTTP proxy kurmaya çalışıyorum. Sorun, parolanın setkomutun başarısız olmasına neden olan özel bir karakteri (@) olmasıdır .

Ben karakter ( \@) kaçış denedim ve %40boşuna için hex değeri ( ) ile yüzde kodlama , denedim .

Örneğin, Foo kullanıcı adı ve B @ r şifresi ile aşağıdaki komutları denedim:

set http_proxy=http://foo:B\@r@http-gateway.domain.org:80
set http_proxy=http://foo:B%40r@http-gateway.domain.org:80

Parolayı değiştirmenin dışında proxy'nin parolayı nasıl kullanmasını sağlayabilirim?


Küme başarısız mı yoksa http_proxy ortam değişkenini kullanan araç @ sembolü nedeniyle başarısız mı?
Mike Cornell

Evet. Biçim kullanıcıadı: şifre @ sunucu: bağlantı noktası olduğundan, şifrenizin ortasında @ olması, şifrenizin sağ tarafının ana makine adı olarak kabul edilmesine neden olur, bu nedenle yukarıdaki ana makine adı çözünürlüğü başarısız olur çünkü ana makine adı r @ http- gateway.domain.org. "R @" orada olmamalıdır.
Philluminati

2
% 40 kullanmayı denedim ve işe yaradı (Windows'ta), emin misiniz?
thegreendroid

Aslında, hem Windows hem de Linux (Ubuntu) üzerinde çalışır.
thegreendroid

Yanıtlar:


29

Yüzde kodlamak zorundasınız | özel karakterleri kodlar . Örneğin, bunun yerine:

http://foo:B@r@http-gateway.domain.org:80

bunu yaz:

http://foo:B%40r@http-gateway.domain.org:80

Böylece @yerini alır %40.


2
kodlama aslında bu sorunu (ve daha birçoklarını) çözmenin yoludur.
Hollanda

i bazı karakterler urlencode çift gerekli
buldum dovidweisz

1
encodeURIComponent()Bu amaçla sadece javascript kullanmanızı öneririm . Tarayıcınızı kolayca kullanabilirsiniz DeveloperTools -> Console.
Mir-Ismaili

2

Herhangi bir özel karakter için onaltılı gösterimde özel karakterin% Ascii kodunu kullanın. Parolamın AB @ 12 # olduğunu varsayalım ve parola şu şekilde ayarlanmalıdır:

git config --global http.proxy *http://usernamne:**AB%4012%23%26**@myipadress:portnumber*

Herhangi bir sayının onaltılık ascii kodunu bilmek için ascii tablosuna bakın.



-1

Bu cevap dayanarak SO , sen @ sembolünü kaçmaya ^ kullanmayı deneyebilirsiniz?


Her ikisine de yanıt olarak, küme başarılıdır, ortam değişkenini kullanan araçtır: set http_proxy=http://foo:B^@r@http-gateway.domain.org:80 jruby -S gem install rakeHATA: gem yürütülürken ... (URI :: InvalidURIError) http şeması kayıt bölümünü kabul etmiyor: foo: B @ r @ http- gateway.domain.org:80 (veya kötü hostname?)
pyropenguin

Bu Linux tabanlı bir soru, Windows tabanlı bir soru değil, ^ kullanmak benim için çalışmıyor. wget: unable to resolve host address Proxy çevresel değişkenini ayarladıktan sonra hala tf4ce @ server.company.com '' alıyorum.
Philluminati

2
Aslında bu Windows tabanlı bir soru ... Piroenguin'i şahsen tanıyorum.
Mike Cornell
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.