/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
bloker ip adresse
Fra : Søren


Dato : 09-04-09 10:15

Hej NG..

Hvordan kan jeg blokkere en bestemt, eller flere ip adresser på min side..
Det skal gerne være alle sider, undersider !
Håber i kan hjælpe

Mvh Søren


 
 
Bertel Lund Hansen (09-04-2009)
Kommentar
Fra : Bertel Lund Hansen


Dato : 09-04-09 12:18

Søren skrev:

> Hvordan kan jeg blokkere en bestemt, eller flere ip adresser på min side..
> Det skal gerne være alle sider, undersider !

Med .htaccess:

   RewriteEngine On
   RewriteCond %{HTTP_USER_AGENT} 1.2.3.4 [OR]
   RewriteCond %{HTTP_USER_AGENT} 5.6.7.8
   RewriteRule ^.* - [F,L]

Eller med PHP i index.php:

   $banned_bots = array(
      "1.2.3.4",
      "5.6.7.8",
   );
   $useragent=$_SERVER['HTTP_USER_AGENT'];
   foreach ($banned_bots as $botstring)
      if (strpos($useragent,$botstring)!== false) exit(0);

--
Bertel
http://bertel.lundhansen.dk/         FIDUSO: http://fiduso.dk/

Michael Rasmussen (09-04-2009)
Kommentar
Fra : Michael Rasmussen


Dato : 09-04-09 12:24

On Thu, 09 Apr 2009 13:18:06 +0200
Bertel Lund Hansen <unospamo@lundhansen.dk> wrote:

>    foreach ($banned_bots as $botstring)
>       if (strpos($useragent,$botstring)!== false) exit(0);
>
Var dette ikke simplere?
if in_array($useragent, $banned_bots)
   exit(0);

--
Hilsen/Regards
Michael Rasmussen
http://pgp.mit.edu:11371/pks/lookup?op=get&search=0xE3E80917
A computer is like air conditioning: it becomes useless when you open
windows.


Bertel Lund Hansen (09-04-2009)
Kommentar
Fra : Bertel Lund Hansen


Dato : 09-04-09 12:33

Michael Rasmussen skrev:

> >    foreach ($banned_bots as $botstring)
> >       if (strpos($useragent,$botstring)!== false) exit(0);

> Var dette ikke simplere?
> if in_array($useragent, $banned_bots)
>    exit(0);

Jo, bestemt. 'Problemet' er at jeg kopierede en rutine hvor jeg
ikke slagter IP-numre, men strenge som robotter præsenterer sig
med. Til rene numre er din løsning perfekt.

--
Bertel
http://bertel.lundhansen.dk/         FIDUSO: http://fiduso.dk/

Arne Feldborg (09-04-2009)
Kommentar
Fra : Arne Feldborg


Dato : 09-04-09 14:21

Søren <s.thomsen@mail.dk> skrev Thu, 9 Apr 2009 11:15:25 +0200

>Hej NG..
>
>Hvordan kan jeg blokkere en bestemt, eller flere ip adresser på min side..
>Det skal gerne være alle sider, undersider !
>
Det kan du ikke i php uden du skal inkludere et stykke kode på hver evig
eneste side.

Du kan gør det ret enkelt i .htaccess:

<FilesMatch "\.*$">
order allow,deny
   allow from all
   Deny from 127.0.0.1
   Deny from 192.168.2.100
</FilesMatch>


--
mvh, A:\Feldborg

Slægtsforskning og lokalhistorie i midt- vestjylland
http://hammerum-herred.dk/

Søren (09-04-2009)
Kommentar
Fra : Søren


Dato : 09-04-09 18:45


>>Hej NG..
>>
>>Hvordan kan jeg blokkere en bestemt, eller flere ip adresser på min side..
>>Det skal gerne være alle sider, undersider !
>>
> Det kan du ikke i php uden du skal inkludere et stykke kode på hver evig
> eneste side.
>
> Du kan gør det ret enkelt i .htaccess:
>
> <FilesMatch "\.*$">
> order allow,deny
> allow from all
> Deny from 127.0.0.1
> Deny from 192.168.2.100
> </FilesMatch>
>
>
> --
> mvh, A:\Feldborg
>

Hej Arne..

Skal jeg bare kopiere og sætte det ind ? Og hvor på siden ?

Mvh Søren


Erik Ginnerskov (10-04-2009)
Kommentar
Fra : Erik Ginnerskov


Dato : 10-04-09 10:01

Søren wrote:

>> Du kan gør det ret enkelt i .htaccess:
>>
>> <FilesMatch "\.*$">
>> order allow,deny
>> allow from all
>> Deny from 127.0.0.1
>> Deny from 192.168.2.100
>> </FilesMatch>

> Skal jeg bare kopiere og sætte det ind ?

Du skal ikke 'bare' kopiere. De linjer, der begynder med "Deny from", skal
du redigere, så det er de ønskede IP-numre, der kommer til at stå der. Du
kan tilføje flere linjer med samme syntax, hvis du ønsker at tilføje
yderligere blokerede adresser.

> Og hvor på siden ?

Det skal ikke ind på nogen sider. Det skal ligge i en tekstfil med navnet
".htaccess" (hverken mere eller mindre, altså ikke noget før punktummet),
som skal ligge i roden på dit webhotel. Og så fungerer det i øvrigt kun på
Apache-servere, så har du et webhotel på en IIS-server med
php-understøttelse, virker det ikke.

--
Med venlig hilsen
Erik Ginnerskov
http://hjemmesideskolen.dk - http://ginnerskov.dk
http://vestfynswebdesign.dk - http://html-faq.dk


Søren (15-04-2009)
Kommentar
Fra : Søren


Dato : 15-04-09 17:26

>
>>> Du kan gør det ret enkelt i .htaccess:
>>>
>>> <FilesMatch "\.*$">
>>> order allow,deny
>>> allow from all
>>> Deny from 127.0.0.1
>>> Deny from 192.168.2.100
>>> </FilesMatch>
>
>> Skal jeg bare kopiere og sætte det ind ?
>
> Du skal ikke 'bare' kopiere. De linjer, der begynder med "Deny from", skal
> du redigere, så det er de ønskede IP-numre, der kommer til at stå der. Du
> kan tilføje flere linjer med samme syntax, hvis du ønsker at tilføje
> yderligere blokerede adresser.
>
>> Og hvor på siden ?
>
> Det skal ikke ind på nogen sider. Det skal ligge i en tekstfil med navnet
> ".htaccess" (hverken mere eller mindre, altså ikke noget før punktummet),
> som skal ligge i roden på dit webhotel. Og så fungerer det i øvrigt kun på
> Apache-servere, så har du et webhotel på en IIS-server med
> php-understøttelse, virker det ikke.
>

Øv, det kan jeg ikke få til at virke..
Har prøvet med min egen ip adresse..

lavet en tekst fil der hedder .htaccess.txt indeholdende dette.

<FilesMatch "\.*$">
order allow,deny
allow from all
Deny from 192.168.123.129
</FilesMatch>

Og lagt det i roden.
Min side ligger hos Gigahost, så det burde virke ?

Søren


Kim Ludvigsen (15-04-2009)
Kommentar
Fra : Kim Ludvigsen


Dato : 15-04-09 17:51

Søren skrev:

> Øv, det kan jeg ikke få til at virke..
> Har prøvet med min egen ip adresse..
> Deny from 192.168.123.129

Det er den forkerte ip-adresse - den er lokal. Du skal have
fat i den eksterne adresse, den kan du finde ved at besøge
http://whatismyip.com. Den fremgår dog også af dit indlægs
header, så hvis du har skrevet dit indlæg fra samme
netforbindelse, så kan du prøve med ip-adressen 80.197.73.241.

--
Mvh. Kim Ludvigsen
http://kimludvigsen.dk

Erik Ginnerskov (15-04-2009)
Kommentar
Fra : Erik Ginnerskov


Dato : 15-04-09 20:55

Søren wrote:

> Øv, det kan jeg ikke få til at virke..
> Har prøvet med min egen ip adresse..
>
> lavet en tekst fil der hedder .htaccess.txt indeholdende dette.
>
> <FilesMatch "\.*$">
> order allow,deny
> allow from all
> Deny from 192.168.123.129
> </FilesMatch>

Som Kim skrev, er IP-adressen forkert. Dertil er filnavnet forkert. Det skal
være .htaccess, ikke .htaccess.txt - du skal omdøbe filen, så .txt bliver
fjernet.

--
Med venlig hilsen
Erik Ginnerskov
http://hjemmesideskolen.dk - http://ginnerskov.dk
http://vestfynswebdesign.dk - http://html-faq.dk


Søg
Reklame
Statistik
Spørgsmål : 177580
Tips : 31968
Nyheder : 719565
Indlæg : 6409079
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste