Ben bir PHP site çalıştıran IP'nin kullanarak IIS beyaz listeye miyim?

2 Cevap php

Mesajınızı Bu adamlar tarafından da belirtildiği gibi, blocking IP's via PHP oldukça kolaydır.

Ancak, IIS kullanarak, geniş, siteyi bu nasıl yapabilirim?

İşte benim (büyük) uyarılar vardır:

  1. Ben php.ini değiştirmek için erişiminiz yok. Yani auto_prepend özelliğini kullanamazsınız.
  2. Ben bu yüzden. Htaccess kullanamıyorum IIS ile Windows üzerinde duyuyorum.
  3. Ben komut tüm çağrısında alır herhangi bir PHP "altbilgi" yoktur. Aslında, sayfaları bir sürü statik HTML vardır!

Ben IP sitesini beyaz listeye IIS kullanabilirsiniz herhangi bir yolu var mı?

İyi haber IP sitesini beyaz listeye statik bir liste var, bu yüzden alışkanlık kolayca değiştirmek gerekir olmasıdır.

2 Cevap

Size istediğiniz sonuçları vermelidir ki, IIS IP adreslerini beyaz olabilir.

  • IIS 6.0, Web sitenizin sağ tıklayın ve özellikleri seçin.
  • Dizin Güvenliği sekmesine gidin.
  • "IP adresleri ve etki alanı adı kısıtlamaları" için Düzen'i tıklatın
  • "Reddedildi erişim" radyo düğmesini tıklayın.
  • Eğer izin İstediğiniz IP adreslerini girin.

Bunu yapmak için IIRF gibi bir URL Rewriter kullanabilirsiniz. 404 ya da ne olursa olsun izin verilmeyen IP'leri gelen istekler ister dönmek için kuralları yerleştirin. Bu herhangi bir web uygulama platformu ile çalışacak: PHP, Java, ASP.NET, RoR, statik html veya görüntüleri, ne olursa olsun.

Readme böyle bir örnek veriyor:

RewriteCond %{REMOTE_ADDR}   ^(?!127.0.0.1)([0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3})(.*)$
RewriteRule  ^/(?!redirected.htm)(.*)$      /redirected.htm

ve şöyle der:

Sunucu değişkeni "REMOTE_ADDR" 127.0.0.1 olmayan bir IP adresi değerlendirir Yukarıdaki durum true değerlendirir. ?! regex sonunda bir sıfır genişlik negatif ileri yönlü ve (. *) bazen o değişken görünen herhangi bir çöp yakalamaktır. Durumun aşağıdaki kural "redirected.htm" olmayan herhangi bir URL için, için "redirected.htm" it harita, diyor. Bu yeniden yazma sonsuz engeller. (Ayrıca, bir [L] değiştirici bayrağı ile sonsuz yeniden yazılmasında önleyebilir).

Bu RewriteCond + RewriteRule IIS sunucusuna herhangi bir dış kaynaklı istekleri yönlendirir. Sen Beyaz listedeki IP'ler belirli bir kümesi için benzer bir şey yapabilirdi.

IIRF C ile yazılmış bir ISAPI filtresi ve mod_rewrite felsefenin benzer. Bu IIS5, 6 ile çalışır, ya da 7. Bunu kurmak için yönetici erişimi gerekir. Sen "programı bu" gerek yok, ama (özellikle mod_rewrite kuralları için). Htaccess benzer bir sözdizimi olan bir ini dosyası var.

IIRF ücretsiz ve açık kaynak.