Microsoft hesabıyla oturum açın
Oturum açın veya hesap oluşturun.
Merhaba,
Farklı bir hesap seçin.
Birden çok hesabınız var
Oturum açmak istediğiniz hesabı seçin.

Belirtiler

Belirli bir kitaplık isteklerini yönlendirmek için kullandığı yürütülebilir bir program barındırmak için IIS Common Gateway Interface (CGI) özelliğini kullandığınızda, istekleri varlığını "PROXY" istek üstbilgisi üzerinde temel zayıflıkları. Bu kitaplık kullanmak için birkaç web uygulama platformları bilinir. Bunlar PHP, Python ve Git, başka şeylerin yanı sıra içerir.

Neden

CGI yürütülebilir işlemleri olarak çalışacak konak uygulamaların web sunucusuna izin veren bir arabirimdir. Bir web sunucusu tarafından bir istek alındığında, sunucu bu tek isteği işlemek için yeni bir işlem başlatır. Talep yapıldığında, işlem sonlandırılır. İşlemin isteğini veri erişimi sırayla istek üstbilgilerini "kendi adına $a HTTP_" olan ortam değişkenleri olarak dahil edilir. Bu nedenle, CGI işlemleri "Proxy" adlı bir başlık içeren istekler için istek üstbilgisi aynı değere sahip bir "HTTP_PROXY" ortam değişkeni vardır.

CURL komut satırı ve kitaplık sunucuları, web sunucuları da dahil olmak üzere çeşitli türlerde isteklerini yapmak için uygulamalar çeşitli etkinleştirmek için yaygın olarak kullanılır. Bu kitaplık, komut satırı parametreleri kullanarak yapılandırılabilir veya ana bilgisayar işlemi ortam değişkenlerinin yapılandırma parametrelerinin okuyabilirsiniz. "HTTP_PROXY" cURL tarafından kullanılan birçok yapılandırma parametrelerini biridir. "HTTP_PROXY" cURL tarafından yapılandırılan proxy üzerinden bir HTTP isteği göndermek için kullanılır.

Not: Bu, bir istemci isteği başlığı "HTTP_PROXY" için ilgisiz temsilidir.

CURL CGI süreç içerisinde bulunan ve işlem "HTTP_PROXY" adında bir ortam değişkeni içeren cURL değerini istenen veri değeri ortam değişkeninde belirtilen HTTP proxy üzerinden göndermek için kullanır. CURL "HTTP_PROXY" yapılandırma yönergesi ve istemci istek üstbilgisi olduğunu bekler oluşur.

Geçici çözüm

Bu soruna geçici bir çözüm için IIS çalıştıran bir sunucuda CGI kullanmayın. CGI tarafından daha yeni ve daha fazla performans ile ilgili arabirimlerin yerini büyük ölçüde eski bir arabirimdir. Özellikle, PHP, Python ve Git FastCGI üzerinde IIS aracılığıyla barındırılmalıdır. FastCGI ortam değişkenleri için istemci istek üstbilgilerini kullanmaz ve bu sorun yok. Ancak ortam değişkenlerini almak için PHP için bazı uygulamalar PHPs getenv() işlevini kullanabilir. Hatta ne zaman PHP CGI işlemi içinde barındırılan değil, onu CGI davranışı istek üstbilgisi değerleri için getenv() işlevini kullanılabilir veri kümesi içine ekleyerek çoğaltır. Bu şekilde HTTP_PROXY alır bir PHP uygulama kullanırsanız, üstbilgi değeri temizlenmesi veya PROXY üstbilgisiyle istekleri reddetmeye aşağıdaki azaltıcı etkilidir.

Herhangi bir nedenden dolayı CGI kullanmanız gerekiyorsa, "Proxy" adlı bir istek üstbilgisi içeren isteklerini engellemek veya üstbilgi değerini temizleyin.  Bu, tarayıcıların genellikle göndermez ve "Proxy" standart istek üstbilgisi adı değil çünkü.

(Tercih edilen çözüm) Proxy üstbilgi içeren bir istek engellemek için aşağıdaki komut satırını çalıştırın:

appcmd set config /section:requestfiltering / + requestlimits.headerLimits. [başlık 'proxy', sizelimit = '0' =]
Not: Appcmd.exe genellikle yolda değildir ve %systemroot%\system32\inetsrv dizinine bulunabilir.

Üstbilgi değerini temizlemek için aşağıdaki URL yeniden yazma kuralı kullanabilirsiniz:

<system.webServer>    <rewrite>
<rules>
<rule name="Erase HTTP_PROXY" patternSyntax="Wildcard">
<match url="*.*" />
<serverVariables>
<set name="HTTP_PROXY" value="" />
</serverVariables>
<action type="None" />
</rule>
</rules>
</rewrite>
</system.webServer>


Not: URL yeniden yazma bir yüklenebilir Ekle-IIS ve varsayılan bir IIS yüklemesinde bulunmamaktadır.

Daha fazla yardıma mı ihtiyacınız var?

Daha fazla seçenek mi istiyorsunuz?

Abonelik avantajlarını keşfedin, eğitim kurslarına göz atın, cihazınızın güvenliğini nasıl sağlayacağınızı öğrenin ve daha fazlasını yapın.

Topluluklar, soru sormanıza ve soruları yanıtlamanıza, geri bildirimde bulunmanıza ve zengin bilgiye sahip uzmanlardan bilgi almanıza yardımcı olur.

Bu bilgi yararlı oldu mu?

Dil kalitesinden ne kadar memnunsunuz?
Deneyiminizi ne etkiledi?
Gönder’e bastığınızda, geri bildiriminiz Microsoft ürün ve hizmetlerini geliştirmek için kullanılır. BT yöneticiniz bu verileri toplayabilecek. Gizlilik Bildirimi.

Geri bildiriminiz için teşekkürler!

×