Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Blokowanie klasy adresów IP
Forum PHP.pl > Forum > PHP
master007
Witam,
Mam taki problem, który zapewne dla wielu użytkowników tego forum okaże się banalny. Jednak proszę, byście mi pomogli. W jaki sposób za pomocą skryptu PHP, mogę zablokować internautów wchodzących na moją stronę, których adresy IP zaczynają się od 79? Jest wśród gości mojej witryny tylko jeden koleś z dynamicznym IP, który zawsze zaczyna się od 79. Reszty IP zaczynają się od innych cyfr. Jest jakiś sposób by zablokować wchodzenie na stronę wszystkim internautom z IP zaczynającym się od 79?

Z góry dziękuje za pomoc i pozdrawiam.
Strarus
Coś mi się wydaje, że zablokujesz bardzo dużo osób, które nie są niczemu winne smile.gif
suchy1
pomysł dziwny, gdyż IP moze zaczynac sie od 79 dla miliona innych użytkowników. Na pewno mozna zablokowac to Ip za pomoca .htaccess. Poszukaj na google na 100% znajdzie. Jeżeli chodzi o PHP to niestety nie umiem Ci pomoc rolleyes.gif
bartg
  1. <?php
  2. $IP = $_SERVER['REMOTE_ADDR'];
  3. if(preg_match('!79.(.*)!', $IP))
  4. {
  5.    echo 'hackor'; exit;
  6. }
  7. //twoj kod
  8. ?>
master007
A jest na niego jakiś inny sposób w takim razie?
webdice
Cytat(bartg @ 9.12.2008, 22:17:41 ) *
  1. <?php
  2. $IP = $_SERVER['REMOTE_ADDR'];
  3. if(preg_match('!79.(.*)!', $IP))
  4. {
  5.    echo 'hackor'; exit;
  6. }
  7. //twoj kod
  8. ?>


Jesteś pewien że to dobre rozwiązanie? Zablokujesz takie adresy:

Kod
79.11.11.11
11.79.11.11
11.11.79.11


Jak już coś to:

  1. <?php
  2. if(preg_match('!^79.(.*)!', $IP))
  3. ?>


ale nie widzę sesnu uzywania wyrażeń regularnych w takich przypadkach. Zdecydowanie prostsze i wydajniejsze będzie użycie takiego kodu:

  1. <?php
  2. if(substr ($IP, 0, 2) == '79')
  3. {
  4.   echo 'hackor'; exit;
  5. }
  6. ?>
ucho
Kod
Deny from 79.0.0.0/8
Allow from all

W .htaccess - chyba łatwiej tym zarządzać.
tsharek
Cytat(ucho @ 10.12.2008, 13:02:33 ) *
Kod
Deny from 79.0.0.0/8
Allow from all

W .htaccess - chyba łatwiej tym zarządzać.


do tego jeszcze trzeba dodać:
Kod
Order allow,deny
webdice
Cytat(tsharek @ 10.12.2008, 13:42:11 ) *
do tego jeszcze trzeba dodać:
Kod
Order allow,deny


Nie trzeba smile.gif
szagi3891
Order allow,deny - trzeba
jak będziesz miał wcześniej zdefiniowane Order deny,allow to wtedy dostęp do strony będą mieć wszyscy
tsharek
Cytat(szagi3891 @ 11.12.2008, 22:37:59 ) *
Order allow,deny - trzeba
jak będziesz miał wcześniej zdefiniowane Order deny,allow to wtedy dostęp do strony będą mieć wszyscy


dokładnie. różne hostingi - różne ustawienia. albo jak sobie gdzieś katalog wyżej zdefiniuje .htaccess który ma inny order. podać nie zaszkodzi, a pomóc może:) poza tym jestem zwolennikiem inicjalizacji wszystkiego co wpływa na działanie aplikacji. wiem z doświadczenia że takie coś ułatwia życie. wystarczy raz takie coś zrobić a później tylko z tego korzystać;)
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.