Hos Computerworld it-jobbank er vi stolte af at fortsætte det gode partnerskab med folkene bag IT-DAY – efter vores mening Danmarks bedste karrieremesse for unge og erfarne it-kandidater.
Tjah. Du kan sagtens blokere en IP. Hvis du vil gøre det i PHP, kan du f.eks. gøre noget i stil med: if ($SERVER['REMOTE_ADDR'] == "1.2.3.4") exit(); Øverst på din side.
Problemet med IP-bans er, at langt de fleste menneskers IP skifter engang imellem. Hos de fleste udbydere skal man betale ekstra for at få en IP der aldrig skifter. Det betyder at du faktisk ikke KAN banne nogen for altid. Ikke med webteknologi i hvert fald.
Jeg ved ikke hvad du kender til IP, men det er ligesom computerens adresse på nettet. Ligesom hvis du har et supermarked, og banner Fiskerivej 3 fra at komme der. Så kan fyren på Fiskerivej 3 ikke komme ind i dit supermarked - men hvis han går hen til naboen først, kommer han pludselig fra Fiskerivej 5 i stedet, og så kan han sagtens komme ind. Ligeledes, hvis der bor flere mennesker på Fiskerivej 3, f.eks. ved at det er et højhus med mange lejligheder, så banner du ALLE på den adresse.
Eneste forskel er som sagt, at de fleste almindelige hjemmeforbindelser har en IP-adresse der skifter med jævne mellemrum. Hvor længe der går før den skifter, er forskelligt fra udbyder til udbyder, men for mange går der kun en uge eller sådan. Hos nogle udbydere har man et hostname, der bliver ved med at være det samme, så man kan banne på det i stedet, men hos mange udbydere er ens hostname det samme som IP'en, plus udbyderens hostname, så det skifter samtidig med ens IP.
Nej. MAC-adresser bliver ikke sendt med i http-headeren når du surfer på nettet. Heldigvis. Så den kan du kun finde over et lokalnetværk, eller ved at få brugeren til at installere noget software på sin maskine, som så sender MAC-adressen til dig. Det er ikke rigtig en brugbar løsning.
Det eneste du kan gøre, ud over IP-ban, er et cookie-ban. Det er til gengæld kun effektivt mod amatører der ikke ved hvordan man sletter cookies, men til gengæld rammer det altid den rigtige maskine.
Hvis du vil banne en person, sætter du i PHP: setcookie("isbanned", "1", time()+31536000, "/");
Og så tjekker du øverst på hovedsiden om: if (isset($_COOKIE['isbanned'])) exit("Du er banned!");
Brug begge former for bans samtidig. Og lad endelig være med at fortælle folk, at de er banned på grund en cookie - det giver dem bare bedre muligheder for at slette den manuelt.
Husk dog også, at nogle få brugere har slået cookies fra i deres browser. Ikke mange gør det, da mange sider holder op med at virke ordentligt, men dem der har slået det fra, vil slet ikke blive banned af dette.
Og cookie-bans kræver naturligvis også at personen går ind på din side én gang, for at få den cookie. Så husk at sætte den cookie FØR du tester om han er IP-banned.
Tror jeg både jeg vil IP banne, og Cookie banne. :)
Nogen der tilfældigvis kender en side, hvor jeg hurtigt kan hente noget som henter og gemmer brugerens IP i ens database? Eller som evt. selv har lavet noget lign? :)
Hvor "time" er en INT i databasen, og "ip" er en CHAR på 15 tegn.
Det burde virke. Så kan du altid selv gøre det mere avanceret. De første tre linjer med session-halløj gør bare at du kun får hver bruger én gang per besøg på siden. Hvis du gerne vil have brugeren logget HVER gang han kigger på en ny side eller opdaterer den nuværende, så bare fjern de linjer.
Hov, nu glemte jeg at putte "ua" ind i databasen - det var også bare en lille ekstrating, som du måske vil have logget. Den viser bare hvilken browser og styresystem brugeren har. Ikke nødvendigt.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.