web-dev-qa-db-ja.com

phpMyAdminはリモートユーザーを許可します

リモートユーザー(localhostだけでなく)がログインできるようにするには、ファイル/etc/httpd/conf.d/phpMyAdmin.confを変更する必要があります

# 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>
28

これまでの他の回答は、<Directory />ブロックの完全な置き換えを推奨しているようです。これは必要ではなく、現在含まれている「AddDefaultCharset UTF-8」などの余分な設定を削除する場合があります。

リモートアクセスを許可するには、2.4 configブロックに1行を追加するか、2.2の2行を変更する必要があります(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>
80
chris

これを使用すると、centOS 7以上で修正されました

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

最初の<directory>タグの内容を置き換えます。

削除する:

<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/>
 Order allow,deny
 Allow from all
</Directory>

後でApacheを再起動することを忘れないでください。

4
nl-x

これを試して

交換

<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/">
    Options Indexes FollowSymLinks MultiViews
    AllowOverride all
        Order Allow,Deny 
    Allow from all
</Directory>

アクセスしやすくするために、次の行を追加します。

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

XAMPPを使用したセットアップは少し異なっていました。 httpd-xampp.confで、次の変更を行う必要がありました。

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

への変更

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>

私はこれを真新しいと言う必要があるので、ただハックしているだけですが、これが私がそれを機能させた方法です。

2
Thrasher8390

私の答えは403エラーの取得に基づいていますが、他の回答で言及されているすべてのApache設定が正しかったのです。

これは新しいCentos 7サーバーであり、問​​題はApacheの設定ではなく、PhpMyAdminがまったく機能しなかったという事実であることが判明しました。解決策は、phpをインストールし、phpディレクティブをApache.confに追加することでした。

  • Sudo yum install php php-mysql
  • vim /etc/httpd/conf/httpd.confのようなものを追加します
  • DirectoryIndex index.php index.phtml index.html index.htmでphpインデックスファイルも提供し、Apacheを再起動します

有効にするためにApacheサーバーを再起動することを忘れないでください-systemctl restart httpd.service

これがお役に立てば幸いです。最初に問題がApacheディレクティブだと思ったので、ここに解決策を投稿します。

0
sakumatto

最初のディレクトリのすべての行をコメントするだけです。または、これらの行を削除することもできますが、後でいくつかの制限を追加する場合に備えて、コメントを外してください。

#<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