htaccess
N-Dye
- webserver
0 Primus0 N-Dye0 Marc Reichelt0 N-Dye
0 Dennis0 Alain
Hi leute!
Ich habe mir einen Apache-server aufgebaut und will eine seite vor zugriffen schützen. Hab mir schon viel über .htaccess durchgelesen und auch schon vieles ausprobiert aber es will einfach nicht klappen.
(leider auch nicht mit euren tipps)
Wie kann ich in windows einen punkt vor htaccess ( .htaccess ) setzen?
Habe bis jetzt immer nur "htaccess) benutzt.
Ich erhalte dann immer die fehlermeldung:
Geben Sie einen Dateinamen ein
Und wenn ich auf die seite zugreife öffnet sie sich einfach ohne das htaccess aktiviert wird.
Bitte um hilfe!!!
THX
Bereich LogIn
Hallo,
so solls klappen:
* DOS-Box öffnen
* copy con .htaccess eingeben
* F6 drücken und mit Return bestätigen
* Voila, es existiert eine echte .htaccess im gewählten Verzeichnis, die mit dem Editor bearbeitet werden kann.
Viel Erfolg!
MfG
Primus
Hi und DANKE!
Mit dem tipp hat es geklappt, die Datei ist bennant. :)
Nur leider komme ich imer noch ohne weiteres auf die seite. :(
Hab mir schon allgemeines zu htaccess durchgelesen und mich schon an die anleitung gehalten doch nichts klappt. browser geht immer noch ohne anmeldung auf die LogIn-seite. Wo kann ich noch fehler gemacht haben oder wad hab ich übersehen?
Bin sehr ratlos!!!
.htaccess:
AuthType Basic
AuthName "UserX"
AuthUserFile /xxx/.htpasswd
require user UserX
Die dateien liegen in verzeiochniss wobei index mein hauptverzeichniss ist.
x:\apache2\index\xxx\
Dieses verzeichniss will ich auch schützen
Danke schon mal hier! :]
Hallo N,
Wo kann ich noch fehler gemacht haben oder wad hab ich übersehen?
Hast du in deiner httpd.conf vielleicht noch irgendwo "AllowOverride = None" stehen?
Wenn ja, so bringen dir tausende von .htaccess-Dateien rein gar nichts.
Damit es funktioniert kann man an dieser Stelle "AllowOverride = All" hinschreiben.
P.S.: Wenn du im "Speichern unter..." Dialog des Editors ".htaccess" eingibst (inklusive der Anführungszeichen!), so sollte dieser die Datei normal abspeichern können.
Bis dann!
Marc Reichelt || http://www.marcreichelt.de/
Hallo an Alle!!!
Danke für die ganzen tipps! und das mir so zahlreich geholfen wird!
Hast du in deiner httpd.conf vielleicht noch
irgendwo "AllowOverride = None" stehen?
Muss ich bei jedem "AllowOverride none" die einstellung auf "AllowOverride all" setzen?
Muss ich AuthGroup angeben?
hab ich in meiner .htaccess weggelassen?
THX
Hallo N-Dye,
Muss ich bei jedem "AllowOverride none" die einstellung auf "AllowOverride all" setzen?
Nein, nur an einer entsprechenden Stelle - ich glaube das ist im DocumentRoot-Bereich.
Muss ich AuthGroup angeben?
hab ich in meiner .htaccess weggelassen?
Wenn du deine Benutzer in Gruppen verwaltest, dann wäre das empfehlenswert. Machst du aber bestimmt nicht... ;-)
Deine Datei sollte dann also insgesamt ungefähr diesen Inhalt haben:
AuthType Basic
AuthName "UserX"
AuthUserFile x:/apache2/index/xxx/.htpasswd
require user UserX
Übrigens ist es empfehlenswert, die .htpasswd-Datei außerhalb deines DocumentRoot zu lagern - einfach die .htpasswd verschieben und die Variable "AuthUserFile" dementsprechend anpassen.
Bis dann!
Marc Reichelt || http://www.marcreichelt.de/
Ich habe nochmal etwas nachgedacht, und nachdem ich die anderen Posts gelesen habe ist folgendes wesentlich besser:
AuthType Basic
AuthName "Passwortgeschuetzter Bereich"
AuthUserFile x:/apache2/users/.htpasswd
require valid-user
Deine .htpasswd liegt dabei in einem Ordner "users" im "Apache2"-Verzeichnis, und enthält den Usernamen und das Passwort.
Bis dann!
Marc Reichelt || http://www.marcreichelt.de/
Hi Marc,
require valid-user
Sehe ich das richtig, dass sich außer dem nichts wesentlich geändert hat?
Warum findest du valid-user besser? Ich finde es eigentlich eher schlechter, denn mit der ersten Variante hast du die Zugriffsmöglichkeit schon mal auf einen User eingeschränkt. Wenn du jetzt in der .htusers mehrere Leute drin stehen hast, von denen aber nicht unbedingt alle Zugriff haben müssen, dann gibt es bei Angabe der einzelnen User weniger potentielle Accounts, über die jemand eindringen kann.
Just my two cents.
MfG, Dennis.
Hi Marc,
require valid-user
Sehe ich das richtig, dass sich außer dem nichts wesentlich geändert hat?
also ich bin mir nicht sicher ,ob nur require valid-user genügt.
Ich habs so in meiner .htaccess
<Limit GET POST>
require valid-user
</Limit>
das heisst konkret,der server fragt bei GET oder POST methode(was ja so üblich ist beim server) nach dem Benutzer.
Warum findest du valid-user besser? Ich finde es eigentlich eher schlechter, denn mit der ersten Variante hast du die Zugriffsmöglichkeit schon mal auf einen User eingeschränkt. Wenn du jetzt in der .htusers mehrere Leute drin stehen hast, von denen aber nicht unbedingt alle Zugriff haben müssen, dann gibt es bei Angabe der einzelnen User weniger potentielle Accounts, über die jemand eindringen kann.
Kannst Du mir sagen,warum die user in einer .htusers datei nicht alle zugang haben sollen?Dann müssten die user ja auch nicht dort aufgeführt sein,wenn sie das nicht dürfen?!
Der Vorteil bei require valid-user ist,man muss nicht jeden user einzeln in die htaccess und in die htpasswd datei schreiben,sondern nur einmal require valid-user in die htaccess und die benutzer in der htpasswd datei.
Da hat auch kein anderer zugang,wenn der nicht in einer htpasswd (od. htusers) datei aufgeführt ist,also genau dasselbe wie wenn jeder benutzer einzeln in einer htaccess aufgeführt wäre.
ich seh da kein unterschied.
Gruss
Alain
Hallo Leute!
Ich find es echt gut das einem hier so zahlreich geholfen wird.
Nur leider komme ich immer noch nicht weiter!
Meine seite ist immer noch frei für jeden verfügbar :-(
Hab meine .htaccess schon richtig eingerichtet.
Die .htpasswd ist auch schon korrekt mit verschlüsselten passwörten fertig.
Mal eine ganz dumme frage für meine bestätigung:
Die .htaccess muss im server-root liegen also in meinem fall
x:/apache2/index/.htaccess
oder ist das falsch? mein apache server ist auf d:/apache2
Danke!
Hallo Nochmal!
Sorry das ich zwei mal intereinender poste aber ich bin des rätsels lösung ein bisschen näher!!!
Meine site fragt mich nun nach einem Passwort! "Yeah - Uhhh" :)
Aber leider nimmt der meine Passwörter nicht an!?
keine Ahnung warum. Hab eigentlich schon die passwörter verschlüsselt.
Wo kann der fehler liegen? (falsch verschlüsselt?)
Findet er die datei nicht? (.htpasswd)
Eerhalte die fehlermeldung: Authorization Required
THX
Hallo N-Dye,
Sorry das ich zwei mal intereinender poste aber ich bin des rätsels lösung ein bisschen näher!!!
Meine site fragt mich nun nach einem Passwort! "Yeah - Uhhh" :)
Aber leider nimmt der meine Passwörter nicht an!?
keine Ahnung warum. Hab eigentlich schon die passwörter verschlüsselt.
Wo kann der fehler liegen? (falsch verschlüsselt?)
Findet er die datei nicht? (.htpasswd)
An diesen beiden Sachen kann es liegen. Versuch mal unter Windows, die Passwörter _unverschlüsselt_ in die Datei zu schreiben - so sollte es klappen. Wenn es dann immer noch nicht klappt, findet er bestimmt die .htpasswd nicht.
Bis dann!
Marc Reichelt || http://www.marcreichelt.de/
Hallo an Alle !!!
Yeahhhhh!!!!
Endlich klappt es!!!
Ich DANKE allen für Ihre Hilfreiche Unterstützung. Ohne diese wäre ich bestimmt noch lange an meinen Rätseln verzweifelt
Wenn ich darf werde ich einen link zur Hauptseite von selfhtml auf meine website stellen damit ich Euch weiterempfehlen kann.
(habt Ihr dann auch nen netten banner?)
MIT BESTEN GRÜSSEN und VIELEN DANK !
N-DYE
Hallo N-DYE
Wenn ich darf werde ich einen link zur Hauptseite von selfhtml auf meine website stellen damit ich Euch weiterempfehlen kann.
(habt Ihr dann auch nen netten banner?)
http://aktuell.de.selfhtml.org/extras/selflogo.htm
Auf Wiederlesen
Detlef
Hallo N-DYE
darf man fragen,welche art .htaccess Du nun eingerichtet hast?
Die htaccess datei sollte auf jedem fall in dem verzeichniss liegen,welches Du geschützt haben möchtest und nicht irgendwo unterhalb des öffentlichen bereichs,die htpasswd datei kann aber ausserhalb des öffentlichen bereichs sein,was eigentlich auch besser ist.
Grüsse
Alain
Hi N,
Wo kann der fehler liegen? (falsch verschlüsselt?)
Findet er die datei nicht? (.htpasswd)
Du hast natürlich schon schön brav in die error.log deines Servers geschaut? Die findest du normalerweise in einem Unterverzeichenis names "logs" im Verzeichnis deines Apachen. Die aktuellesten Einträge stehen ganz unten an der Datei.
MfG, Dennis.
Hi Alain,
<Limit GET POST>
require valid-user
</Limit>
Das ist eigentlich weniger als ich hatte - denn bei meiner Methode sollte auch für ein HEAD eine Autehtifizierung erlangt werden.
Da bei HEAD allerdings keine Daten der Seite an den User geschickt werden, müsste das so auch reichen.
das heisst konkret,der server fragt bei GET oder POST methode(was ja so üblich ist beim server) nach dem Benutzer.
Bei anderen Methoden dafür nicht.
Kannst Du mir sagen,warum die user in einer .htusers datei nicht alle zugang haben sollen?Dann müssten die user ja auch nicht dort aufgeführt sein,wenn sie das nicht dürfen?!
Ja, der Vorteil ist: Du hast eine einzige .htusers und eventuell noch eine .htgroups Datei - wenn du jetzt mehrere Ordner zugangsgeschützt haben willst, dann brauchst du nicht für jeden Zugangsschutz eine eigene .htusers Datei, sondern jeder Zugansschutz greift auf diese _eine_ .htusers Datei zurück.
Ein weiterer Vorteil daran ist, dass wenn ein User sein Passwort ändern möchte, dann ist es auch direkt für alle Ordner geändert, also für alle Zugangskontrollen, die diese .htusers verwenden und man muss die Passwortänderung nicht an mehreren Stellen vornehmen.
Mit einer zentralen .htusers und .htgroups Datei lässt sich also eine Verwaltung der User viel einfacher durchführen.
Der Vorteil bei require valid-user ist,man muss nicht jeden user einzeln in die htaccess und in die htpasswd datei schreiben,sondern nur einmal require valid-user in die htaccess und die benutzer in der htpasswd datei.
Dafür die es ja auch die Möglichkeit die User zu gruppieren, siehe auch SelfHTML dazu.
Da hat auch kein anderer zugang,wenn der nicht in einer htpasswd (od. htusers) datei aufgeführt ist,also genau dasselbe wie wenn jeder benutzer einzeln in einer htaccess aufgeführt wäre.
Wenn du aber verschiedene Bereiche hast, z.B. so:
Hauptordner
Jetzt kannst du alle Moderatoren und auch "ich" in die Gruppe mods stecken, die haben dann alle Zugriff auch den Ordner "nurFürModeratoren" - zusätzlich hat "ich" noch zugriff auf "nurFürAdministatoren".
Das Spiel kann man natürlich noch beliebig weit treiben.
MfG, Dennis.
Hi N,
AuthUserFile /xxx/.htpasswd
Wie auch in SelfHTML - Webserver steht, muss an dieser Stelle ein absoluter Pfad angegeben werden und _kein_ Pfad ausgehen vom Server Root. Und ein absoluter Pfad beginnt unter Windows nun mal mit einem Laufwerksbuchstaben.
MfG, Dennis.
Hi,
Wie auch in SelfHTML - Webserver steht, muss an dieser Stelle ein absoluter Pfad angegeben werden und _kein_ Pfad ausgehen vom Server Root.
Das ist natürlich falsch.
Selbstverständlich darf dort ein relativer Pfad stehen. Dieser wird relativ zum server root (nicht zu verwechseln mit document root) interpretiert.
Siehe auch http://httpd.apache.org/docs-2.0/mod/mod_auth.html#authuserfile:
The AuthUserFile directive sets the name of a textual file containing the list of users and passwords for user authentication. File-path is the path to the user file. If it is not absolute (i.e., if it doesn't begin with a slash), it is treated as relative to the ServerRoot.
cu,
Andreas
Hi MudGuard,
Das ist natürlich falsch.
Selbstverständlich darf dort ein relativer Pfad stehen. Dieser wird relativ zum server root (nicht zu verwechseln mit document root) interpretiert.
Thx, gut zu wissen.
MfG, Dennis.
Hi,
Das ist natürlich falsch.
Selbstverständlich darf dort ein relativer Pfad stehen. Dieser wird relativ zum server root (nicht zu verwechseln mit document root) interpretiert.
Mal ne Zwischenfrage.
Wird unter Windows ein Pfad, der mit / beginnt, als relativ interpretiert?
Hi,
Bin sehr ratlos!!!
.htaccess:
AuthType Basic
AuthName "UserX"
also das ^^ dürfte nicht ganz richtig sein
AuthUserFile /xxx/.htpasswd
require user UserX
das ^^ ist auch nicht nötig
ich würde die htaccess so schreiben:
AuthType Basic
AuthName "members"
AuthUserFile /var/www/.htpasswd
AuthGroupFile /dev/null
<Limit GET POST>
require valid-user
</Limit>
-------------
es genügt "require valid-user" zu schreiben in einer htaccess und
nicht jeden user einzeln.In der ".htpasswd" datei sollte aber beides drinn stehen user und verschlüsseltes passwort.
username:verschlüsseltespasswort
username2:verschlüsseltespassword2
etc.
Grüsse
Alain
Hi,
AuthName "UserX"
also das ^^ dürfte nicht ganz richtig sein
wieso? Es wird dann halt dieser Name beim Login ausgegeben. Zugegeben, "Bitte Username und Passwort für UserX auf ... eingeben" klingt etwas doof, aber falsch ist es nicht.
freundliche Grüße
Ingo