web-dev-qa-db-fra.com

Ubuntu 14 - Nginx - PHP5-fpm: phpmyadmin installé mais 403 accès interdit

Nginx et PHP5-FPM sont installés et fonctionnent bien ... 

# Je peux accéder aux deux http://www.example.com et http://www.example.com/info.php

$ ls -la /var/www/html
 -rw-r--r-- 1 root root  868 Nov  1 08:16 index.html
 -rw-r--r-- 1 root root   21 Nov  1 08:13 info.php

J'ai installé phpmyadmin et créé un lien symbolique vers des fichiers phpmyadmin

 lrwxrwxrwx 1 root root   21 Nov  1 08:37 phpmyadmin -> /usr/share/phpmyadmin

mais en essayant d'obtenir http://www.example.com/phpmyadmin => je reçois un 403 Forbidden

en utilisant un lien symbolique, je ne devrais pas avoir à ajouter quoi que ce soit lié à phpmyadmin dans mon nginx.conf ... que pourrait-il manquer?

Mise à jour 1: l'ajout d'index.php à l'URI ouvre le panneau de connexion

 http://www.example.com/phpmyadmin/index.php

que dois-je ajouter à mon fichier de configuration par défaut pour l'obtenir directement ... Je suppose que mon fichier d'essai n'est pas valide .. voici mon fichier de configuration du site nginx par défaut

    server {
        listen 80 default_server;
        listen [::]:80 default_server ipv6only=on;

        root /var/www/html;
        index index.php, index.html index.htm;

        server_name example.com;

        location / {
            try_files $uri $uri/ index.html index.php  =404;
        }

        error_page 404 /404.html;
        error_page 500 502 503 504 /50x.html;
        location = /50x.html {
            root /var/www/html;
        }

        location ~ \.php$ {
            try_files $uri =404;
            fastcgi_split_path_info ^(.+\.php)(/.+)$;
            fastcgi_pass unix:/var/run/php5-fpm.sock;
            fastcgi_index index.php;
            include fastcgi_params;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        }
    }
6
user762579

ça fonctionne bien après avoir ajouté l'emplacement suivant:

     location /phpmyadmin {
       index index.php;
    }
8
user762579

C'est ma solution à ce problème:

Étape 1 : Vous devriez SSH et lancer la commande

Sudo nano /etc/nginx/sites-available/default

Étape 2 : trouver le code de bloc

server {
  ....
}

puis insère avant "}" du bloc serveur

    location /phpmyadmin {
            index index.php;
    }

Ça ressemble à ça

server{
       ...(your default)...
       location /phpmyadmin {
                index index.php;
       }
}

J'espère que c'est votre!

6
Vo Quoc Cuong

J'ai ajouté:

location /pma/ {
    alias /usr/share/phpmyadmin/;

    index index.html index.htm index.php;

    location ~ ^/pma(.+\.php)$ {
        alias /usr/share/phpmyadmin$1;
        fastcgi_pass unix:/var/run/php5-fpm.sock; #OR fastcgi_pass 127.0.0.1:9000;
        fastcgi_param SCRIPT_FILENAME /usr/share/phpmyadmin$1;
        include fastcgi_params;
        fastcgi_intercept_errors        on;
    }
}

Ainsi, lorsque l'utilisateur accède au répertoire /pma/, il est également dirigé vers le /usr/share/phpmyadmin, qui est également une option légèrement plus sûre! Comme précédemment, j'avais aussi l'erreur 403!

Mais le correctif principal pour l'erreur 403 est en réalité la mise en œuvre de la ligne:

index index.html index.htm index.php;
3
maxisme

Perdez la virgule et tout va bien

    index index.php, index.html index.htm;
1
Tõnis Bramanis

Voici quelques choses que vous pourriez essayer. L'un est la directive disable_symlinks :

location /phpmyadmin {
    disable_symlinks off;
}

Une autre option serait d’utiliser un alias au lieu d’un lien symbolique:

location /phpmyadmin {
    alias /usr/share/phpmyadmin;
}
0
Cole Tierney

dans le fichier nginx.conf ou par défaut (../sites-available/default)

location /phpmyadmin {
       root /usr/share/;
       index index.php index.html index.htm;
       location ~ ^/phpmyadmin/(.+\.php)$ {
               try_files $uri =404;
               root /usr/share/;
               fastcgi_pass unix:/run/php/php7.0-fpm.sock;
               fastcgi_index index.php;
               fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
               include /etc/nginx/fastcgi_params;
       }
       location ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
               root /usr/share/;
       }
}
0
Vyacheslav Zudvin