it-swarm.com.de

Verwendung von nginx zum Hosten von roundcube in der Root-Domain, während phpmyadmin aus dem Unterverzeichnis gehostet wird

Ich habe meine Domain so eingerichtet, dass sie Roundcube in der Root-Domain hostet, und zwar mit root/www/roundcube in der vhost-Konfiguration, aber wenn ich versuche, einen anderen Speicherort für phpmyadmin hinzuzufügen, verwende ich root/www/phpmyadmin für das von mir angegebene Root-Verzeichnis einige seltsame Fehler bekommen. Ich habe viele verschiedene Konfigurationen ausprobiert, einschließlich Alias, Root, Root mit Umschreiben usw., aber ich erhalte immer wieder entweder 404, 403, nur einen leeren Bildschirm (keine Quelle) oder sogar die Roundcube-Installation von domain.com/phpmyadmin . Hier ist ein Pastebin meiner vhost-Datei im jetzigen Zustand, in dem das Unterverzeichnis phpmyadmin funktioniert, der Roundcube in der Root-Domain jedoch nicht. (Ich bin im Moment auf dem Handy, also war dies das Beste, was ich tun konnte.)

Was mache ich falsch oder besser noch, welchen Teil von location/root/alias missverstehe ich?

Meine vhost-Konfigurationsdatei

1
Greg

Wenn Sie einen weiteren root -Parameter in nginx hinzufügen, wird dieser als Literalstamm für diesen bestimmten Speicherort behandelt. Zum Beispiel:

location ^~ /phpmyadmin {
    root /www/phpmyadmin;
}

Wenn Sie /phpmyadmin anfordern, versucht nginx, /www/phpmyadmin/phpmyadmin zu laden.

Ein Weg, der funktionieren würde, wäre:

location ^~ /phpmyadmin {
    root /www;
}

Beachten Sie, dass niemand andere Verzeichnisse als /www/phpmyadmin durchsuchen konnte, da nginx /www nur als Stammverzeichnis verwendet, wenn der Speicherort mit /phpmyadmin beginnt.

Wenn Sie immer noch Probleme haben, stellen Sie sicher, dass Sie index.php anfordern, indem Sie index index.php; in Ihren Standortblock einfügen. Überprüfen Sie auch Ihr Nginx-Fehlerprotokoll auf weitere Informationen.

1
JorgenPhi