Avatar billede leif Seniormester
19. juli 2006 - 10:19 Der er 10 kommentarer og
1 løsning

List dir hvis fra IP eller kan angive brugernavn og kode

Hej,

Jeg har en sjov en.

Jeg har behov for at lave en htaccess som siger følgende: Hvis jeg kommer fra nogle bestemte IP adresser så skal den vise mig indholdet af biblioteket, hvis jeg kommer fra en anden IP skal den anmode mig om Brugernavn og Adgangskode, men jeg skal uanset hvad altid have adgang til underbiblioteket /Test uanset om jeg kan angive brugernavn eller kommer fra IP adressen.

Samt den skal vise filen notallowed.php hvis jeg angiver forkert brugernavn og adgangskode (notallowed.php ligger helst i det beskyttet dir)


Jeg kan ikke lige gennemskue hvordan man skal bygge den op, hvis man kan ?

Er der en venlig sjæl som kan gennemskue den og hjælpe mig ?

På forhånd tak

/Leif
Avatar billede htm Nybegynder
21. juli 2006 - 19:08 #1
Selvfølgelig kan det lade sig gøre :-)

Noget ala dette burde kunne gøre det:

ErrorDocument 401 notallowed.php

Order allow,deny
Allow from xxx.xxx.xxx.xxx
Allow from yyy.yyy.yyy.yyy

AuthType Basic
AuthName "Protected area"
AuthUserFile /sti/til/htpasswdfil
require valid-user
Satisfy any

- Satisfy any gør at en af reglerne skal være opfyldt - altså enten allow via IP eller også password
- xxx.xxx.xxx.xxx og yyy.yyy.yyy.yyy er dine IP'er, du kan tilføje andre hvis du har brug for det.
- ErrorDocument 401, dog mener jeg at den skal ligge i et bibliotek som alle har adgang til, men prøv dig frem. Det er også muligt at der skal angives hele stien til dokumentet.
Avatar billede showsource Seniormester
22. juli 2006 - 10:51 #2
Det er korrekt at errorfilen skal ligge et sted hvor alle har adgang.
Og brug
/notallowed.php
hvis den ligger i roden af dit domain

Man kan godt bruge mellemrum for hver ip som har adgang
Allow from 127.0.0.1 123.456.789.0

Du kan også nøjes med en del af ip'en, for at lade alle fra "den" ip få adgang
Allow from 192.168
Avatar billede leif Seniormester
22. juli 2006 - 15:44 #3
Smid et svar, fungerer fint når man jo skriver stien til htpaaswd korrekt
Avatar billede htm Nybegynder
22. juli 2006 - 18:04 #4
ok :-)
Avatar billede leif Seniormester
22. juli 2006 - 18:13 #5
Kan du egentlig fortælle mig hvad forskellen er på 403 og 401 er ? Jeg kan se at du bruger 401, jeg ville nemlig bruge 403.
Avatar billede leif Seniormester
22. juli 2006 - 18:15 #6
By the way, blev lige spurgt af en som også kommer til at bruge det, kan man definere IPadresser altid vil blive Denyed og ikke spørges om brugernavn og password ?
Avatar billede htm Nybegynder
22. juli 2006 - 18:19 #7
401 betyder unauthorized og 403 betyder forbidden.

401 bruges i forbindelse med logins hvor man ikke har adgang pga. forkert brugernavn / kodeord.
403 bruges allerede andre steder hvor man skal vise der ikke er adgang.

læs mere her: http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html
Avatar billede htm Nybegynder
22. juli 2006 - 18:20 #8
Så er det bare at fjerne den nederste del fra "AuthType Basic" til "Satisfy Any". Så har man kun adgang fra de IP'er.

I det tilfælde skal du så bruge 403 errordocument.
Avatar billede leif Seniormester
22. juli 2006 - 18:22 #9
Okay, det var ikke det jeg ville.

Jeg ville sige:
Hvis kommer fra IPadresse eller kan angive brugernavn eller password, så forsæt, men kommer du fra IPadresse yy.yy.yy.yy eller yy.yy.yy.yx så Deny og anmod ikke om Brugernavn og Adgangskode.
Avatar billede htm Nybegynder
22. juli 2006 - 18:26 #10
Burde så kunne løses ved at skrive
deny from yy.yy.yy.yy yy.yy.yy.yx
efter dine allows
Avatar billede leif Seniormester
24. juli 2006 - 21:19 #11
Synes ikke at fungere, men det var også en mindre detalje
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Uanset kodesprog, så giver vi dig mulighederne for at udvikle det, du behøver.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester