web-dev-qa-db-fra.com

phpMyAdmin permet aux utilisateurs distants

Je dois modifier le fichier /etc/httpd/conf.d/phpMyAdmin.confin afin de permettre aux utilisateurs distants (pas seulement localhost) de se connecter.

# phpMyAdmin - Web based MySQL browser written in php
# 
# Allows only localhost by default
#
# But allowing phpMyAdmin to anyone other than localhost should be considered
# dangerous unless properly secured by SSL

Alias /phpMyAdmin /usr/share/phpMyAdmin
Alias /phpmyadmin /usr/share/phpMyAdmin

<Directory /usr/share/phpMyAdmin/>
   <IfModule mod_authz_core.c>
     # Apache 2.4
     <RequireAny>
       Require ip 127.0.0.1
       Require ip ::1
     </RequireAny>
   </IfModule>
   <IfModule !mod_authz_core.c>
     # Apache 2.2
     Order Deny,Allow
     Deny from All
     Allow from 127.0.0.1
     Allow from ::1
   </IfModule>
</Directory>

<Directory /usr/share/phpMyAdmin/setup/>
   <IfModule mod_authz_core.c>
     # Apache 2.4
     <RequireAny>
       Require ip 127.0.0.1
       Require ip ::1
     </RequireAny>
   </IfModule>
   <IfModule !mod_authz_core.c>
     # Apache 2.2
     Order Deny,Allow
     Deny from All
     Allow from 127.0.0.1
     Allow from ::1
   </IfModule>
</Directory>

# These directories do not require access over HTTP - taken from the original
# phpMyAdmin upstream tarball
#
<Directory /usr/share/phpMyAdmin/libraries/>
    Order Deny,Allow
    Deny from All
    Allow from None
</Directory>

<Directory /usr/share/phpMyAdmin/setup/lib/>
    Order Deny,Allow
    Deny from All
    Allow from None
</Directory>

<Directory /usr/share/phpMyAdmin/setup/frames/>
    Order Deny,Allow
    Deny from All
    Allow from None
</Directory>

# This configuration prevents mod_security at phpMyAdmin directories from
# filtering SQL etc.  This may break your mod_security implementation.
#
#<IfModule mod_security.c>
#    <Directory /usr/share/phpMyAdmin/>
#        SecRuleInheritance Off
#    </Directory>
#</IfModule>
27
Germano Massullo

Les autres réponses suggèrent jusqu'à présent de préconiser le remplacement complet du bloc <Directory />, ce n'est pas nécessaire et peut supprimer des paramètres supplémentaires tels que "AddDefaultCharset UTF-8" maintenant inclus.

Pour autoriser l'accès à distance, vous devez ajouter une ligne au bloc de configuration 2.4 ou modifier deux lignes dans la version 2.2 (selon votre version d'Apache):

<Directory /usr/share/phpMyAdmin/>
   AddDefaultCharset UTF-8

   <IfModule mod_authz_core.c>
     # Apache 2.4
     <RequireAny>
       #ADD following line:
       Require all granted
       Require ip 127.0.0.1
       Require ip ::1
     </RequireAny>
   </IfModule>
   <IfModule !mod_authz_core.c>
     # Apache 2.2
     #CHANGE following 2 lines:
     Order Allow,Deny
     Allow from All
     Allow from 127.0.0.1
     Allow from ::1
   </IfModule>
</Directory>
77
chris

utilisez ceci, il a été réparé pour moi, plus de centOS 7 

<Directory /usr/share/phpMyAdmin/>
Options Indexes FollowSymLinks MultiViews
AllowOverride all
Require all granted
</Directory>
20
abhirathore2006

Remplacez le contenu de la première balise <directory>.

Retirer:

<Directory /usr/share/phpMyAdmin/>
 <IfModule mod_authz_core.c>
  # Apache 2.4
  <RequireAny>
    Require ip 127.0.0.1
    Require ip ::1
  </RequireAny>
 </IfModule>
 <IfModule !mod_authz_core.c>
  # Apache 2.2
  Order Deny,Allow
  Deny from All
  Allow from 127.0.0.1
  Allow from ::1
 </IfModule>
</Directory>

Et place ceci à la place:

<Directory /usr/share/phpMyAdmin/>
 Order allow,deny
 Allow from all
</Directory>

N'oubliez pas de redémarrer Apache après.

4
nl-x

Essaye ça

Remplacer 

<Directory /usr/share/phpMyAdmin/>
    <IfModule mod_authz_core.c>
        # Apache 2.4
        <RequireAny>
            Require ip 127.0.0.1
            Require ip ::1
        </RequireAny>
    </IfModule>
    <IfModule !mod_authz_core.c>
        # Apache 2.2
        Order Deny,Allow
        Deny from All
        Allow from 127.0.0.1
        Allow from ::1
    </IfModule>
</Directory>

Avec ça:

<Directory "/usr/share/phpMyAdmin/">
    Options Indexes FollowSymLinks MultiViews
    AllowOverride all
        Order Allow,Deny 
    Allow from all
</Directory>

Ajoutez la ligne suivante pour faciliter l'accès:

Alias /phpmyadmin /usr/share/phpMyAdmin
3
John Guan

Ma configuration était un peu différente avec XAMPP. dans httpd-xampp.conf je devais apporter le changement suivant. 

Alias /phpmyadmin "C:/xampp/phpMyAdmin/"
<Directory "C:/xampp/phpMyAdmin">
    AllowOverride AuthConfig
    Require local
    ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var
</Directory>

changer à

Alias /phpmyadmin "C:/xampp/phpMyAdmin/"
<Directory "C:/xampp/phpMyAdmin">
    AllowOverride AuthConfig
    #makes it so I can config the database from anywhere
    #change the line below
    Require all granted
    ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var
</Directory>

Je dois affirmer que je suis nouveau dans ce domaine, alors je me débrouille, mais c'est comme ça que je l'ai fait fonctionner.

2
Thrasher8390

Ma réponse est basée sur l'obtention d'une erreur 403 bien que tous les paramètres Apache mentionnés dans les autres réponses soient corrects. 

C'était un nouveau serveur Centos 7 et il s'est avéré que le problème ne concernait pas les paramètres Apache, mais le fait que PhpMyAdmin ne servait pas du tout. La solution consistait à installer php et à ajouter la directive php à Apache.conf:

  • Sudo yum installer php php-mysql
  • vim /etc/httpd/conf/httpd.confadd quelque chose comme 
  • DirectoryIndex index.php index.phtml index.html index.htm Pour servir également les fichiers d'index php , Puis redémarrez Apache

N'oubliez pas de redémarrer le serveur Apache pour qu'il prenne effet - systemctl redémarrer httpd.service

J'espère que ça aide. J'ai d'abord pensé que mon problème était lié aux directives Apache. Je publie ici ma solution.

0
sakumatto

Il suffit de commenter toutes les lignes du premier répertoire. Vous pouvez également supprimer ces lignes, mais il est préférable de ne pas commenter au cas où vous souhaiteriez ajouter des restrictions ultérieurement.

#<Directory /usr/share/phpMyAdmin/>
#   <IfModule mod_authz_core.c>
#     # Apache 2.4
#     <RequireAny>
#       Require ip 127.0.0.1
#       Require ip ::1
#     </RequireAny>
#   </IfModule>
#   <IfModule !mod_authz_core.c>
#     # Apache 2.2
#     Order Deny,Allow
#     Deny from All
#     Allow from 127.0.0.1
#     Allow from ::1
#   </IfModule>
#</Directory>
0
ursuleacv