apache2.4 + php-fpm + phpmyadmin in debian

8

Ich habe dieses Setup in einem Debian: Apache 2.4 proxy_fcgi und php-fpm (v5.5). In meiner Virtualhost-Datei habe ich:

%Vor%

und alles funktioniert gut, ich kann phpinfo () und jede php-Datei sehen, die ich unter / var / www / html / anfordere.

Ich fahre mit der Installation von phpmyadmin aus dem Debian Repo fort, aber wenn ich zu Ссылка blättern gehe, bekomme ich den Fehler "Datei nicht gefunden" und in das Apache-Fehlerprotokoll

%Vor%

Das Debian phpmyadmin-Paket lädt den Inhalt nach / usr / share / phpmyadmin. Wenn ich eine test.html Datei unter / usr / share / phpmyadmin erstelle, kann ich den Inhalt von Ссылка

sehen

Das Problem ist, dass PHP-Dateien unter / usr / share / phpmyadmin nicht verarbeitet werden. Die phpmyadmin Apache Konfiguration ist dies:

%Vor%

und wird in die Apache-Konfigurationsdatei geladen.

Da keine mod_php installiert ist, gibt es keine Verarbeitung für die PHP-Dateien. Wie kann ich Apache sagen, um proxy_fcgi zu verwenden, um PHP-Dateien im Verzeichnis / usr / share / phpmyadmin zu verarbeiten?

& gt; & lt; update & lt; & lt; Ich fügte eine proxypassmatch Richtlinie in phpmyadmin Apache conf

hinzu %Vor%

erwartet zu arbeiten, aber ich bekomme immer den gleichen Fehler.

& gt; & gt; Update 2 & lt; & lt; Ich ersetzte den php-fpm Unix-Socket durch das Netzwerk (127.1: 9000) und ersetzte den ProxyPassmatch der Virthualhost-Datei durch:

%Vor%

und in phpmyadmins Apache conf:

%Vor%

und alles funktioniert .. wenn ich zu MY.IP / phpinfo.php gehe, bekomme ich die phpinfo von /var/www/html/phpinfo.php und wenn ich MY.IP / phpmyadmin / phpinfo.php besuche, bekomme ich die verarbeitete Inhalte von /usr/share/phpmyadmin/phpinfo.php.

Mein Problem ist gelöst, aber ich verstehe immer noch nicht, warum die Netzwerkverbindung mit php-fpm funktioniert, aber der Unix-Socket nicht.

    
papasj 18.04.2014, 21:35
quelle

3 Antworten

5

Ich hatte mit genau diesem Problem zu kämpfen, und ich konnte phpmyadmin nicht zur Arbeit bringen. Ich bekam immer noch die oben erwähnte "Datei nicht gefunden". Mein Problem war, dass ich meinen ProxyPassMatch in meine 000-default.conf-Datei innerhalb meines ./sites-available-Ordners legen musste und diese Einträge VOR meiner Standard-Einstellung platzieren musste. Dies war eine Gliederung ganz unten auf dieser Seite, wo ich die Lösung gefunden habe: Ссылка

Hier ist die Art, wie ich meine Einstellungen als Referenz habe.

%Vor%     
Russell Griffith 02.10.2015 16:28
quelle
1

Könnte das daran liegen, dass Sockets von Apache 2.4.9 und von Ihnen unterstützt werden? hast du vielleicht einen früheren Build von 2.4 benutzt?

    
dzhi 05.07.2014 14:40
quelle
0

Sieht so aus, als hättest du das gelöst.

  1. Ihr PHPMyAdmin wurde auf mod_php5 eingestellt, was wahrscheinlich nicht installiert wurde, seit Sie PHP über PHP-FPM verwenden.
  2. Sie haben richtig erkannt, dass phpmyadmin setup einen Proxypass benötigt, der den korrekten Pfad zu den PHP-Dateien hat.

Für das letzte Bit wird php-fpm normalerweise auf einem Unix-Socket oder auf TCP hören, aber nicht auf beiden. Wie lautet die listen -Direktive in /etc/php5/fpm/pool.d/www.conf ? Sind mehr als ein listen Direktiven definiert?

Ich schätze, da ist nur der eine Listen 127.0.0.1:9000 drin.

    
fideloper 04.05.2014 20:59
quelle

Tags und Links