Hej!
Går det att ha en logginsida istället för den dialogruta man får upp när man har lösenords skyddat en katalog med hjälp av .htaccess filen?
Om ja hur gör man då?
------------------
/nordan
9 svar · 475 visningar · startad av nordan
Hej!
Går det att ha en logginsida istället för den dialogruta man får upp när man har lösenords skyddat en katalog med hjälp av .htaccess filen?
Om ja hur gör man då?
------------------
/nordan
Har för mig att man kan gå direkt in på sidan m.h.a. http://användarnamnet:lösenordet@domän.se/skyddad_mapp/
I så fall är det bara att fixa en sida med ett formulär som tar hand om datan och sedan skickar vidare om den är korrekt.
Du gör ett vanligt formulär och använder sedan (förslagsvis) ett serverskript som tar hand om datan.
I PHP skulle det t.ex kunna se ut så här (kortfattat).
if ($_POST[username] == $username AND $_POST[password] == $password) {
header("Location: <A HREF="http://$username:$password@doman.com/hemligmapp/");" TARGET=_blank>[url]http://[/url]$username:$password@doman.com/hemligmapp/");</A>
}
Den skapar man själv i den mapp man vill skydda. http://www.apacheweek.com/issues/96-10-18#userauth
Tack för den länken.
Kommit så långt att jag skapat lösenord och användarnamn i filen users.
Sen så har jag gjort en test.htaccess fil. I den har jag skrivit följande:
AuthName "r2"
AuthType Basic
AuthUserFile c:/Files/Apache/htdocs/users
require valid-user
r2 är då katalogen (kan man specificera enskilda filer?).
Nu trodde jag det skulle bli så att när man försöker komma åt sidan som jag sparat i katalogen r2, så skulle det komma upp en login ruta. Men icke.
Är det någon typ av inställning jag har missat?
[Redigerat av Tim den 08 feb 2002]
När det gäller windows så har jag inte testat.
Det första du måste göra är att ändra raden AllowOverride None till AllowOverride AuthConfig i filen httpd.conf annars läser inte Apache .htaccess-filerna.
Du säger att du har gjort en test.htaccess? Filerna ska heta .htaccess såvida man inte ändrat förhållandena i http.conf-filen (se raden AccessFileName .htaccess i httpd.conf).
I winversionen borde det följa med ett program för att skapa lösenordsfilerna. Kolla apache/bin-mappen om det finns ett program som heter htpasswd.exe. Du använder troligen kommandotolken för att använda programmet. I filen .htaccess som du skapar anges sedan sökvägen till den aktuella lösenordsfilen. Jag kan inte komma på något mer som behövs för att det ska fungera.
Lite komplettering:
AuthName "r2"
Har inget med mappen att göra. Det blir namnet som visas på popupfönstret när man loggar in. Mappen anges aldrig i någon sökväg utan det är filen .htaccess som talar om för Apache vad som gäller för mappen. Du placerar alltså .htaccess-filen i den mapp du vill skydda. När du har AllowOverride AuthConfig (alt. AllowOverride All) i din httpd.conf så kommer Apache alltid först att kontrollera om en sådan fil existerar och då gäller de direktiv som står i den filen.