programing

phpMyAdmin을 통해 원격 사용자 허용

procenter 2022. 10. 10. 20:50
반응형

phpMyAdmin을 통해 원격 사용자 허용

파일을 수정해야 합니다./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>

지금까지의 다른 답변은 <Directory/> 블록의 완전한 치환을 지지하는 것 같습니다.이는 필요하지 않으며 현재 포함되어 있는 'Add Default Charset UTF-8'과 같은 추가 설정이 삭제될 수 있습니다.

업데이트 2021

이제 구성 파일이 간소화되었기 때문에 다음 항목을 한 줄만 추가하면 됩니다.

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

   Require local
   # ADD following line:
   Require all granted
</Directory>

원답

원격 액세스를 허용하려면 2.4 구성 블록에 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>

이걸 사용해봐, 날 위해 고쳐진거야, 1센트 이상OS 7

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

첫 번째 내용을 바꿉니다.<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를 재시작하는 것을 잊지 마십시오.

이거 드셔보세요

교체하다

<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

httpd-xampp.conf에서 XAMPP를 사용했을 때 설정이 조금 달랐습니다.다음 사항을 변경해야 했습니다.

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>

나는 이 일에 대해 완전히 처음이라고 말해야 한다.그래서 나는 그냥 이리저리 해보는 중이지만 이렇게 해서 나는 그것을 할 수 있었다.

첫 번째 디렉토리의 모든 행을 코멘트합니다.또는 이러한 행을 삭제할 수도 있지만, 나중에 제한을 추가할 경우에 대비하여 주석 해제를 권장합니다.

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

다른 답변에서 언급된 Apache 설정은 모두 맞췄지만 403 에러가 발생한 것을 기준으로 답변합니다.

이 서버는 Centos 7의 새로운 서버이며 Apache 설정이 아니라 PhpMyAdmin이 전혀 작동하지 않는 것이 문제임이 판명되었습니다.해결책은 php를 설치하고 php 디렉티브를 apache.conf에 추가하는 것이었습니다.

  • sudo yum install php ph-module
  • vim /etc/syslogd/conf/syslogd.conf는 다음과 같은 기능을 추가합니다.
  • 디렉토리index.php index.phtml index.html index.htm을 지정하여 php 인덱스 파일도 제공하고 apache를 재시작합니다.

Apache 서버를 재시작하여 활성화하십시오. systemctl restart httpd.서비스

이게 도움이 됐으면 좋겠어요.처음에는 Apache 디렉티브가 문제인 줄 알고 솔루션을 여기에 올렸습니다.

언급URL : https://stackoverflow.com/questions/23704674/phpmyadmin-allow-remote-users

반응형