Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Wyodrębnienie adresów IP botów z pliku
AboutMe
post 22.11.2013, 10:17:48
Post #1





Grupa: Zarejestrowani
Postów: 261
Pomógł: 0
Dołączył: 24.02.2008

Ostrzeżenie: (0%)
-----


Witam,

Ktoś próbuje shakować mi stronę za pośrednictwem pliku wp-admin/admin-ajax.php. Dodałem do tego pliku kod który zapisuje adresy IP do pliku, teraz muszę jakoś usunąć adresy IP które powtórzyły się mniej niż 100x. Czy ktoś mógłby mi podać kod który zrobiłby to?
Go to the top of the page
+Quote Post
SmokAnalog
post 22.11.2013, 10:23:32
Post #2





Grupa: Zarejestrowani
Postów: 1 707
Pomógł: 266
Dołączył: 3.07.2012
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Adresy IP, które powtórzyły się mniej niż 100 razy wydobędziesz np. tak:
  1. $ips = array_keys(
  2. array_count_values(file('plik.txt', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES)),
  3. function($occurencies) {
  4. return $occurencies < 100;
  5. }
  6. )
  7. );


P.S. Seriously, edytowałeś plik admin-ajax.php? Mogłeś to zrobić normalnie w wp-content korzystając z akcji.
Go to the top of the page
+Quote Post
AboutMe
post 22.11.2013, 10:32:09
Post #3





Grupa: Zarejestrowani
Postów: 261
Pomógł: 0
Dołączył: 24.02.2008

Ostrzeżenie: (0%)
-----


Coś nie działa mi ten kod. Czy ktoś mógłby podać wersję w wyrażeniach regularnych to wrzucę to do edytora.
Go to the top of the page
+Quote Post
SmokAnalog
post 22.11.2013, 10:49:31
Post #4





Grupa: Zarejestrowani
Postów: 1 707
Pomógł: 266
Dołączył: 3.07.2012
Skąd: Poznań

Ostrzeżenie: (0%)
-----


W jaki sposób chcesz to zrobić wyrażeniami regularnymi?

Kod działa, o ile masz zapisane adresy linijka po linijce, a tak założyłem. Po drugie ten kod tylko zwraca adresy, dalej musisz sobie sam poradzić. Po trzecie, zmieniłeś chociaż nazwę pliku w kodzie na właściwą?
Go to the top of the page
+Quote Post
AboutMe
post 22.11.2013, 10:55:10
Post #5





Grupa: Zarejestrowani
Postów: 261
Pomógł: 0
Dołączył: 24.02.2008

Ostrzeżenie: (0%)
-----


wyświetla mi same jedynki: 1111111111111111111111111111

  1. $ips = array_keys(
  2. array_count_values(file('2013_11_21_log.txt', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES)),
  3. function($occurencies) {
  4. return $occurencies < 100;
  5. }
  6. )
  7. );
  8.  
  9. echo = $ips;


Ten post edytował AboutMe 22.11.2013, 10:55:47
Go to the top of the page
+Quote Post
SmokAnalog
post 22.11.2013, 10:57:57
Post #6





Grupa: Zarejestrowani
Postów: 1 707
Pomógł: 266
Dołączył: 3.07.2012
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Cytat(AboutMe @ 22.11.2013, 10:55:10 ) *
  1. echo = $ips;

A co to za potwór? Zrób tak:
  1. var_dump($ips);
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 19.07.2025 - 09:59