2016-04-15 5 views
0

Hallo Leute, ich brauche ein wenig Hilfe, mit Nginx-Konfiguration. Also mein Problem ist, dass ich nicht phpmyadmin in meinem Website-Stammverzeichnis haben möchte. Nun meine nginx.conf aussieht:nginix ändern root-Verzeichnis wenn location = etwas

server { 
    listen 80; 
    server_name 192.168.21.177; 
    charset utf-8; 

    access_log /dev/null main; 
    error_log /dev/null; 

    root /home/web/wesite1; 

    location/{ 
     index index.php; 
    } 
    location /phpmyadmin/ { 
     root /home/web/phpmyadmin; 
     index index.php; 
    } 

    location ~ \.php$ { 
     include fastcgi_params; 
    } 

    location ~ /\.ht { 
     deny all; 
    } 
} 

Aber es funktioniert nicht. Danke :)

Antwort

0

Verwenden Sie einen verschachtelten location Block, um PHP-Skripte aus verschiedenen Dokumentenstammzeilen auszuführen.

location ^~ /phpmyadmin/ { 
    root /home/web; 
    index index.php; 

    location ~ \.php$ { 
     include fastcgi_params; 
    } 
} 
location ~ \.php$ { 
    include fastcgi_params; 
} 

So haben Sie zwei location ~ \.php$ Blöcke, eine für jedes Dokument Wurzel.

Anmerkung: Ich denke, root/home/web innerhalb des location ^~ /phpmyadmin/ Block sein sollte, die Dateien befinden, in /home/web/phpmyadmin/, als Dokumentstamm und URI sind verketteten Punkt und /phpmyadmin ist bereits der URI Teil.

Siehe this document für die Positionssyntax.