htpasswd immer im Apache Ordner?
WernerK
- webhosting
Hallo,
ich habe einen XAMPP auf meinem Windows 7 laufen und möchte gerne zum testen einen htaccess Schutz auf den Ordner "meinweb" machen.
Die .testpasswd und .htaccess Datei ist erstellt.
Ich würde gerne die .testpasswd Datei im gleichen Verzeichnis wie die .htaccess Datei ablegen.
Aber egal was ich als Pfad eingebe, der Apache sucht die .testpasswd Datei immer im /apache Ordner.
Auszuf error.log
Could not open password file: C:/xampp/Apache/.testpasswd
Wenn ich in den Apache Ordner die .testpasswd lege, klappt es.
Auszug .htaccess
AuthUserFile "../htdocs/meinweb/.projectpasswd"
.
AuthUserFile /meinweb/.projectpasswd
Selbst mit absoluten PFaden geht es nicht:
AuthUserFile "c:/xampp/htdocs/meinweb/htaccess/.projectpasswd"
Gibt es hier irgend eine Einstellung die ich übersehen habe?
Gruss
Werner
Hello Werner,
Du müsstet mal deine .htaccess zeigen.
Die Passwortdatei .testblabla zu nennen, ist nicht so günstig. Die Dateien, die der Apache nicht per HTTP ausliefert beginnen per default mit .ht
Das kann man zwar auch ändern, es wäre aber erstmal Standard.
Eine .testblabla kann man sehr wohl über HTTP aufrufen, wenn man den Namen kennt. Damit würden dann die üblicherweise nur schwach verschlüsselten Passwörter zur Entschlüsselung bereit stehen.
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg
Hi,
Ich würde gerne die .testpasswd Datei im gleichen Verzeichnis wie die .htaccess Datei ablegen.
Aber egal was ich als Pfad eingebe, der Apache sucht die .testpasswd Datei immer im /apache Ordner.
Nein, nicht egal.
Relative Pfade beziehen sich auf den Apache-Server-Root.
Ein absoluter Pfad aber (natürlich) nicht.
AuthUserFile "c:/xampp/htdocs/meinweb/htaccess/.projectpasswd"
Warum mit ""?
Schon mit \ statt / probiert?
Und wie heißt die Datei jetzt? .projectpasswd oder .testpasswd?
Nicht vergessen: die Hinweise von Tom bzgl. des Namens .htpasswd beachten.
cu,
Andreas
Hallo,
ok, habe nun mal der einfach halber auf .htpasswd umbenannt.
Warum mit ""?
so habe ich es mal in einem Manual gesehen.
Es geht aber auch nicht ohne ""
AuthType basic
AuthUserFile C:/xampp/htdocs/meineweb/htaccess/.htpasswd
AuthName "Projektdatenbank"
require valid-user
Schon mit \ statt / probiert?
Und es geht auch nicht mit Backslashes
Es kommt immer ein Server Error 500
Gruss
Werner
Hi,
Es kommt immer ein Server Error 500
Bist Du schon auf die Idee gekommen, mal in den Logfiles des Apache nachzugucken?
Wenn nein, warum nicht?
Wenn ja, warum verschweigst Du uns die konkreten Fehlermeldungen?
cu,
Andreas
Hallo,
Bist Du schon auf die Idee gekommen, mal in den Logfiles des Apache nachzugucken?
ich hatte doch gleich in meinem Eingangspost einen Auszug aus dem Apache Error log gepostet!
(allerdings nicht die ganze Zeile....)
[authn_file:error] [pid 376:tid 1692] (OS 2)Das System kann die angegebene Datei nicht finden. : [client ::1:50622] AH01620: Could not open password file: C:/xampp/Apache/.htpasswd
Gruss
Werner
Hello,
ich hatte doch gleich in meinem Eingangspost einen Auszug aus dem Apache Error log gepostet!
(allerdings nicht die ganze Zeile....)[authn_file:error] [pid 376:tid 1692] (OS 2)Das System kann die angegebene Datei nicht finden. : [client ::1:50622] AH01620: Could not open password file:
Unter welchem User läuft der Apache?
Hat dieser User Zugriff auf das Verzeichnis und die Dateien?
Welcher User benutzt wird, kannst Du Dir z.B. einfach mit phpinfo() ansehen, wenn Du nicht in der httpd.conf danach suchen willst. Und dann hängt es noch davon ab, unter welchem User der Apache gestartet wird. "Starten als Administrator" oder gleich als Dienst einrichten.
Dein Windows hat schließlich ein Rechtesystem für das Filesystem.
Ob der Apache Zugriff hat, kannst Du übrigens auch ganz einfach mit einem kleinen PHP-Script testen:
<?php
readfile('C:/xampp/Apache/.htpasswd');
?>
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg
Hello,
Welcher User benutzt wird, kannst Du Dir z.B. einfach mit phpinfo() ansehen,
*ätsch*
Unter WinDoofs wird das leider nicht angezeigt.
steht sonst unter apache2handler:
Hostname:Port bitworks.de:80
User/Group www-data(33)/33
Ob der Apache Zugriff hat, kannst Du übrigens auch ganz einfach mit einem kleinen PHP-Script testen:
<?php
readfile('C:/xampp/Apache/.htpasswd');
?>
Das wären dann ein Zugriff per "Script-User"
Der Apache läuft zumindest auf Linux unter root und seine Childs dann unter dem/den eingestellten Usernamen. Beim Modul sind die alle gleich, bei der CGI-Version können unterschiedliche je nach Domain zugeordnet werden.
Auf Windows kann er nur unter dem User laufen, der ihn gestartet hat.
Ob da auch noch Child-User möglich sind, entzieht sich im Moment meiner Kenntnis.
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg
![](http://selfhtml.bitworks.de/Virencheck.gif)
--
☻\_
/▌
/ \ Nur selber lernen macht schlau
<http://bikers-lodge.com>
Hi,
... seine Childs ...
auuutsch!
Auf Windows kann er nur unter dem User laufen, der ihn gestartet hat.
Das wäre also in der Regel SYSTEM, da man ihn ja vermutlich als Service laufen lässt.
Ob da auch noch Child-User möglich sind, entzieht sich im Moment meiner Kenntnis.
Denkbar wär's, ich weiß es aber auch nicht.
Ciao,
Martin
Hello,
... seine Childs ...
auuutsch!
Ami-Slang :-P
In good old UK sagt man selbstverständlich 'children'.
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg
Hi,
... seine Childs ...
auuutsch!
Ami-Slang :-P
nee, das zählt nicht als Ausrede! :-P
In good old UK sagt man selbstverständlich 'children'.
In Amiland auch. Es gibt allerdings ein paar sprachliche Eigenheiten im IT-Englisch, das unabhängig von der Region generell eher amerikanisch geprägt ist.
So gilt es beispielsweise als stillschweigende Übereinkunft, dass man optische Disks mit 'c' am Schluss schreibt (z.B. Compact Disc), magnetische dagegen mit 'k' (hard disk, floppy disk).
Und ein Kollege erzählte mir mal, dass der Plural von "mouse" ausnahmsweise auch "mouses" lauten darf, wenn es um Computermäuse geht. Wir erinnern uns: Der sprachlich korrekte Plural wäre "mice". Aber ganz ehrlich: Ich habe diese Pluralform "mouses" noch nirgends bewusst angetroffen, auch wenn das Internet aufzeigt, dass er sich das nicht einfach ausgedacht hat.
Ciao,
Martin
Hello,
... seine Childs ...
auuutsch!
Ami-Slang :-Pnee, das zählt nicht als Ausrede! :-P
Ich wollte Google-Fight als Ausrede benutzen, aber das hat gestreikt
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg
Hello,
Es kommt immer ein Server Error 500
Dann ist httpauth noch nicht zugelassen in der (Virt-)Host-Konfoguration
Das musst Du erst freigeben.
http://httpd.apache.org/docs/2.2/howto/auth.html
AllowOverride muss für das Verzeichnis freigegeben sein!
Bisschen lesen in der Handbuchseite des Apachen und vergleichen mit der Konfiguration hilft vielleicht.
Im Xampp findest Du das entweder unter
/programme/xampp/apache/conf/httpd.conf
oder, wenn Du einen VirtHost eingerichtet hast (zu empfehlen)
/programme/xampp/apache/conf/extra/https-vhosts.conf
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg
Hallo,
AuthUserFile "c:/xampp/htdocs/meinweb/htaccess/.projectpasswd"
Warum mit ""?
Anführungszeichen *kann* man verwenden ... muss man aber nicht ... (frei nach Rüdiger Hoffmann)
Schon mit \ statt / probiert?
Der Windows-Apache akzeptiert beides gleichwertig (wie das File-API von Windows übrigens auch); wenn man Backslashes verwendet, muss man sie aber C-typisch doppelt notieren.
Ciao,
Martin