phpmyadmin und DocumentRoot

sxx128

New Member
Hallo @ll

ich habe einen Apache2 Webserver auf einem vserver von server4you laufen ohne Confixx. Dank dem Forum habe ich es mittlerweile geschafft das wenn ich meine URL eintippe die test.index.html im Browser angezeigt wird.

Meine Verzeichnisstruktur sieht so aus........


/var/www/

dort liegt webalizer, phpmyadmin und das Verzeichnis DocumentRoot (heißt natürlich anderst) :=)

Nun möchte ich natürlich auch phpmyadmin nutzen um eine Datenbank anzulegen. Muss phpmyadmin im DocumentRoot Verzeichnis liegen ??? Wenn ich phpmyadmin nicht im DocumentRoot Verzeichnis liegen habe, komme ich mit dem Browser doch nicht hin oder ?????

Grüße
und Danke für euere Mühe im voraus ....

sxx128
 
Der Document-Root-Pfad ist essentiel. Ein Beispiel:

Der Document-Root ist /var/www
Der Pfad im Browser ist /irgend/etwas/seite.html (von: http://welt.all/irgend/etwas)

Der Webserver ruft nun auf: /var/www/irgend/etwas/seite.html

Ein Aufruft von /../anderes/verzechnis ist aus Sicherheitsgründen nicht möglich*
(Das würde dann zu /var/www/../anderes/verzechnis/ oder: /var/anderes/verzeichnis/ führen)

*von PHP abgesehen ;-)
 
Hallo und Danke erstmal....

aber verstanden habe ich das nicht so ganz....

also muss phpadmyadmin

zwingend im Verzeichnis

var/www/

liegen in dem dann auch die index.html

liegt ???????


Ich kann ja schon als DocumentRoot/Directory folgendes eintragen:

/var/www/irgendwas/wasanderes/nochwasanderes/

und dort meine index.html hineinlegen... und der Aufruf im Browser meiner
Domain

http://www.irgendwas.de

wäre erfolgreich....

In diesem Fall würde phpmyadmin ja aber in

/var/www/

liegen

und somit für mich über den Browser nicht erreichbar... oder hab ich mir da jetzt nen Knoten ins Hirn gedacht.....

Grüsse
sxx128
 
Hallo

ok alles klar....

nun habe ich eine neue Baustelle aufgemacht. Ich möchte dann doch schon gerne das Verzeichnis phpmyadmin mittels htaccess schützen.

Wie gesagt mein absoluter Pfad lautet: /var/www/

Ich habe ein Datei .htaccess. Diese hat folgenden Inhalt:

Code:
AuthType Basic
AuthName "Passwortgeschüzter Bereich"
AuthUserFile /var/www/.htpasswd
require valid-user
dann habe ich eine Datei .htpasswd angelegt. Diese hat folgenden Inhalt

Code:
test:12345


Beide liegen in /var/www/

wo auch

phpmyadmin

liegt...

Nun habe ich eigentlich erwartet dass wenn ich im Browser

http://www.meinedomain/phpmyadmin

aufrufe ich zu einer Benutzername:Passwort eingabe aufgefordert werde. Ich komme aber sofort auf die "Startseite" von phpmyadmin....

Habt ihr eine Idee ???

Grüße
sxx128
 
Hallo

danke für die schnelle Antwort.
Also müssen beide Dateien in das Verzeichnis welches man schützen will .. ok so weit so gut.....

Ich habe gerade mal ein

Code:
ls- al

im Verzeichnis

/www/

abgesetzt und dann folgendes Ergebnis erhalten

Code:
lrwxrwxrwx   1 root root   21 Apr 11 15:04 phpmyadmin -> /usr/share/phpmyadmin

d.h für mich, dass mein phpmyadmin im Verzeichnis /www/ eigentlich nur ein Link ist auf

Code:
/usr/share/phpmyadmin

Eigentlich müssten dann die

.htaccess
und die
.htpasswd

ja in das Verzeichnis

/usr/share/phpmyadmin/


Das Passwort 1234 war von mir übrigens nur Beispielhaft gewählt.

Grüße
ssx 128
 
..ok das hat funktioniert :=) ...

nun versuche ich mein Document Root zu schützen das klappt aber grad mal gar net.....
so sieht der Auszug aus meiner sites-available aus:

DocumentRoot /var/www
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
# This directive allows us to have apache2's default start page
# in /apache2-default/, but still have / go to the right place
# RedirectMatch ^/$ /apache2-default/
</Directory>


Dementsprechend habe ich die Dateien .htaccess und .htpasswd nach /var/www/
kopiert aber funktionieren tut das nicht....

Bei dem Aufruf von http://www.meineseite.de erscheint keine Abfrage des Benutzernamen:Passwort

Grüße
sxx128
 
Last edited by a moderator:
Nö, weil:
Code:
AllowOverride None
AllowOverride bezieht sich auf die .htaccess-Dateien. Damit legst du fest, welche Einstellungen die .htaccess überschreiben ("Override") darf. Und da steht none, das heißt: "gar nix".
 
Hallo

du warst schneller :=) Hatte es selbst rausgefunden....

allerdings nicht so wie ich es eigentlich wollte ....

ich habe in der /etc/apache2/sites-available/default bei AllowOverride None durch AuthConfig ersetzt.

Code:
        <Directory /var/www/>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride AuthConfig
                Order allow,deny
                allow from all
                # This directive allows us to have apache2's default start page
                # in /apache2-default/, but still have / go to the right place
                # RedirectMatch ^/$ /apache2-default/
        </Directory>

D.h. wenn ich meine URL eintippe kommt Abfrage des Benutzernamens und des Passworts. Die .htaccess und die .htpasswd liegt in /var/www/

Allerdings funktioniert dass nur wenn ich keine .htacess und .htpasswd im Verzeichnis

/usr/share/phpmyadmin/

habe.

Beides geht also nicht zusammen. Zumindest kriege ich das nicht hin. D.h. jeder der die Benutzerdaten für meine Webseite hat und anschliessend in der Adressleiste

http://www.meineseite.de/phpmyadmin

eintippt kommt dort hin ohne weitere Benutzerdaten. Gibt es dafür eine Lösung ???

Grüß
sxx128
 
Back
Top