홈 > 서버 > 리눅스
리눅스

CentOS 7 yum으로 phpMyAdmin 설치 & 권한(permission) 문제 해결-403에러

사랑으로 0 167

이전 서버에서는 phpmyadmin을 tar.gz 파일로 직접 받아 필요한 디렉토리에 직접 설치했다. 이 방법도 크게 문제는 없었지만 이번에는 yum 명령어를 통해 설치해 보기로 했다.

yum으로 설치할 경우 phpmyadmin과 서버와의 의존성 검사를 통해 나머지 필요한 패키지까지 한방에 설치 가능하다. 그리고 당연히 yum 명령어 update, upgrade 명령어로 자동 업데이트를 지원한다. 이는 나같이 매뉴얼 업데이트를 귀찮아하는 닝겐에게는 매우 큰 장점이 된다.

1. 우선 phpmyadmin을 설치하기 위해 저장소를 추가하자. 요즘에는 저장소 추가도 yum에서 패키지로 지원하더라.

yum install epel-release

yum update

2. 그리고 나서 phpmyadmin을 설치해주자.

yum install phpmyadmin

매뉴얼 설치할 경우 경로를 입맛대로 지정 가능 했지만 yum 설치시는 경로 지정이 힘들다. yum 설치시 시스템에서의 phpmyadmin 기본 경로는 /usr/share/phpMyAdmin 이다.

phpmyadmin로 접속하려면 http://호스트주소/phpmyadmin 이 default다. 그런데 나는 yum으로의 설치 부작용(매뉴얼 설치했을 때는 이런거 없었는데...)으로 permission denied가 난다. 같은 네트워크망에서는 403 에러가 나고 외부에서는 405가 난다. 구글신 접신.

/etc/httpd/conf.d/phpMyAdmin.conf  /etc/httpd/conf.d/httpd.conf 를 모두 수정해주어야한다.

우선 phpMyAdmin.conf

해당 파일을 뒤져보면 호스트주소/phpmyadmin가 Alias 되어 있는 것을 확인할 수 있다. 하여튼 이게 중요한 것이 아니라 다음과 같은 구문이 있을 거다.

주석을 읽어보니 phpMyAdmin 접근 자체를 localhost에서만 가능하도록 하기 위해 이런 설정을 해놓았다고 한다. 하지만 나는 외부 접속이 가능하도록 해야하니 설정을 변경한다.

<Directory /usr/share/phpMyAdmin/>

   AddDefaultCharset UTF-8

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

   AddDefaultCharset UTF-8

   Order Allow,Deny

   Allow from All

</Directory>


다음으로 httpd.conf 당연히 시스템마다 조금씩 다를 줄 있지만 약 102번째 줄에 다음과 같은 구문이 있다.

<Directory />

    AllowOverride none

    Require all denied 

</Directory>

Require all denied 줄을 Require all granted로 변경해주자. / 를 거쳐 접속하는 것에 대해 허용된다.


820881ce5a2586580cb81f614085ff08_1534673873_5875.JPG 



이제 퍼미션(권한) 문제 없이 잘 접속 된다. 대체로 MySQL DB를 사용하는 서버와 배포판들이 MariaDB로 넘어가는 추세다. 오픈수세도 작년인가 저작년에 저장소에서 MariaDB만 지원하기 시작하더니 이번 CentOS 7 에서도 공식 저장소에서는 MariaDB만 지원하는 듯하다.(어..어...오라클 화이팅...?!)

MySQL과 MariaDB의 차이점인가? 기본 DB 목록에서 information_schema 말고 처음보는 performance_schema라는 친구가 보인다. 나중에 한번 뒤져봐야겠다.

다음 포스팅은 웬지 httpd 사용자 정의 디렉토리(UserDir) 설정이 될 듯하다.

출처: http://luckyyowu.tistory.com/287 [요우의 내맘대로 블로그]


0 Comments
Category
State
  • 현재 접속자 1,758(1) 명
  • 오늘 방문자 488 명
  • 어제 방문자 513 명
  • 최대 방문자 758 명
  • 전체 방문자 153,761 명
  • 전체 게시물 659 개
  • 전체 댓글수 1 개
  • 전체 회원수 43 명
Facebook Twitter GooglePlus KakaoStory KakaoTalk NaverBand