Alias ​​utilisant Nginx provoquant phpMyAdmin login boucle sans fin

Récemment, j'ai essayé de configurer un server Web en utilisant Nginx (j'utilise normalement Apache). Cependant, j'ai eu un problème en essayant de définir phpMyAdmin sur un alias . L'alias vous prend également correctement l'écran de connection phpMyAdmin, cependant, lorsque vous entrez des informations d'identification valides et que vous appuyez sur, vous vous retrouvez dans l'écran de connection sans erreur.

Je ressemble à un problème de cookie ou de session … mais si j'ai un lien symbolique avec le directory phpMyAdmin et j'essaie d'ouvrir une session via la version symésortingque, ça marche bien! Le lien symbolique et l'alias définissent le même nombre de cookies et les deux groupes semblent définir les cookies pour le domaine et le path d'access correct.

Ma configuration Nginx pour l'alias php est la suivante:

location ~ ^/phpmyadmin/(.*\.php)$ { alias /usr/share/phpMyAdmin/$1; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $request_filename; } 
  • Je gère Nginx 0.8.53
  • PHP 5.3.3
  • MySQL 5.1.47
  • phpMyAdmin 3.3.9 – installation automatique
  • Et php-mcrypt est installé.

Est-ce que quelqu'un d'autre a déjà connu ce comportement? Quelqu'un a-t-il des idées sur la façon de le réparer?

4 Solutions collect form web for “Alias ​​utilisant Nginx provoquant phpMyAdmin login boucle sans fin”

J'ai eu exactement le même problème. J'ai couru un site Web avec une racine de doc dans /var/www/somesite et /var/www/somesite voulais accrocher phpmyadmin à un sous-dossier sur le site. J'ai essayé ceci avec cette configuration dans nginx:

 root /var/www/somesite; location /pma/ { alias /usr/share/phpmyadmin/; } location ~ ^/pma/(.+\.php)$ { alias /usr/share/phpmyadmin/$1; fastcgi_pass unix:/tmp/phpfpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $request_filename; include fastcgi_params; } 

Cela semblait fonctionner, sauf lorsque je me suis connecté, comme vous l'avez décrit, je viens de voir la page d'accueil à nouveau. Pas d'erreurs, rien. Si je me suis connecté avec un mauvais mot de passe, j'ai eu un "Je ne peux pas me connecter au server MySQL" -error, comme vous l'aviez prévu.

Solution
Enfin, ce que j'ai fait, c'est que je traînais toutes les choses de fastcgi_params et que le changement de DOCUMENT_ROOT -paramètre l'avait corrigé. Le nginx-config ci-dessus a changé pour:

 root /var/www/somesite; location /pma/ { alias /usr/share/phpmyadmin/; } location ~ ^/pma/(.+\.php)$ { alias /usr/share/phpmyadmin/$1; fastcgi_pass unix:/tmp/phpfpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $request_filename; # From fastcgi_params fastcgi_param QUERY_STRING $query_ssortingng; fastcgi_param REQUEST_METHOD $request_method; fastcgi_param CONTENT_TYPE $content_type; fastcgi_param CONTENT_LENGTH $content_length; fastcgi_param SCRIPT_NAME $fastcgi_script_name; fastcgi_param REQUEST_URI $request_uri; fastcgi_param DOCUMENT_URI $document_uri; fastcgi_param DOCUMENT_ROOT /usr/share/phpmyadmin; # <-- Changed fastcgi_param SERVER_PROTOCOL $server_protocol; fastcgi_param GATEWAY_INTERFACE CGI/1.1; fastcgi_param SERVER_SOFTWARE nginx/$nginx_version; fastcgi_param REMOTE_ADDR $remote_addr; fastcgi_param REMOTE_PORT $remote_port; fastcgi_param SERVER_ADDR $server_addr; fastcgi_param SERVER_PORT $server_port; fastcgi_param SERVER_NAME $server_name; fastcgi_param REDIRECT_STATUS 200; } 

(Note latérale: Je pense que c'est un problème avec nginx, que vous ne pouvez pas définir un alias et la racine de la documentation en même time. En fait, étrange).

Igor indique que votre configuration exacte devrait fonctionner:

http://forum.nginx.org/read.php?2,3059.3060#msg-3060

Vous pouvez postr ici et voir ce qu'ils ont à dire; votre configuration me semble tout à fait valable.

Si vous exécutez phpMyAdmin sous Nginx + phpfpm, c'est sûrement un problème de propriété. Prenez les mesures suivantes pour le résoudre:
1. Regardez la valeur "session.save_path" (la valeur par défaut est "/ var / lib / php / session") dans le file de configuration php-Fpm situé à /etc/php-fpm.d/www.conf. L'user et le groupe de listn.owner doivent posséder le dossier de pathement défini ici.
2. Exécuter "chown -R nginx: nginx / var / lib / php / session" comme sudo pour le réparer.
3. Vous devriez maintenant pouvoir vous connecter à phpMyAdmin sans problème.

C'est ma configuration:

 location /phpmyadmin { alias /usr/share/phpmyadmin; index index.php; location ~ /([^/]+\.php)$ { try_files /$1 =404; fastcgi_pass unix:/var/run/php/php7.1-fpm.sock; fastcgi_index index.php; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; location ~ /phpmyadmin/js/([^/]+\.php)$ { try_files /phpmyadmin/js/$1 =404; fastcgi_pass unix:/var/run/php/php7.1-fpm.sock; fastcgi_index index.php; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; } } } 
  • Hébergement d'un site Web php dans Windows Server 2008 avec Apache
  • Quel est l'accélérateur PHP le plus efficace pour un environnement d'hébergement partagé?
  • Des idées sur la façon d'exécuter la maintenance sur un site toujours utilisé?
  • Fichiers de sessions Diabling Symfony2
  • Comment puis-je utiliser SetEnv avec mod_fcgid pour passer des options spécifiques au domaine virtuel sur mon application PHP? (apache2)
  • Essayer de configurer un démon PHP à l'aide de System_Daemon et j'ai des problèmes pour l'exécuter
  • interdire les parameters de configuration php personnalisés sur apache 2.2 + mod_php server
  • Windows server 2012 R2 limitant datatables de la request dans php
  • .net et php sur le même hôte?
  • Les permissions de file Apache - vhost ne fonctionnent pas correctement en utilisant le groupe www-data
  • Erreur fatale: appel à une fonction indéfinie imagettftext ()
  • Les astuces du serveur de linux et windows, tels que ubuntu, centos, apache, nginx, debian et des sujets de rĂ©seau.