본문 바로가기
Linux/CentOS

CentOS 7 관리 - APM : Apache, PHP, MariaDB 설치

by 후쮸아빠 2016. 3. 16.

설치 전 준비

  1. 의존성 라이브러리를 설치합니다
    libpng* 의 경우 설치시 충돌이 발생하여...  --skip-broken 옵션을 지정하여 설치

    # yum -y install gcc gcc-c++  libtermcap-devel gdbm-devel zlib* libxml* freetype* libjpeg* gd-* 
    # yum -y install libpng* --skip-broken

Apache, PHP, MariaDB 설치

  1. yum 으로 Apach 설치

    
    # yum -y install httpd
    
    
  2. Apach 설정

    
    # vi /etc/httpd/conf/httpd.conf
     
    
    
    
    
    #User apache    /*User nobody 변경   */
    #Group apache   /*Group nobody 변경  */ 
    User nobody
    Group nobody
    ... 
    
    
    
    
    
    ServerName centos.kgoon.net:80 
    ...
    DocumentRoot "/var/www/html"    /* 경로 변경 시 해당 경로 755 변경 및 Selinux 보안 기능(?)을 중지하고 아파치 서버를 재 가동 */
    ...
    < Directory "/var/www/html">     /* DocumentRoot와 동일하게 */
    ...
    <IfModule dir_module>
        DirectoryIndex index.html index.php index.htm
    </IfModule>
    ...
    AddDefaultCharset UTF-8   /* 기본 인코딩 설정 */ 
    
    
  3. Apach 상태 및 실행, 부팅 시 자동 실행 등록

    
    # systemctl status httpd           /* 설치된 상태를 봅니다. */
    # systemctl start httpd            /* 서비스 가동 명령어 입니다. */
    # systemctl enable httpd.service   /* 부팅 후 자동 실행 설정 */
    
    
  4. 방화벽 설정

    
    # systemctl status firewalld   /* 방화벽 상태 확인 */
    # vi /etc/firewalld/zones/public.xml
    <?xml version="1.0" encoding="utf-8"?>
    <zone>
      <short>Public</short>
      <description>For use in public areas. You do not trust the other computers on networks to not harm your computer. Only selected incoming connections are accepted.</description>
      <service name="dhcpv6-client"/>
      <service name="ssh"/>
      <port protocol="tcp" port="80"/>
      <port protocol="tcp" port="3306"/>
    </zone> # systemctl reload firewalld /* 방화벽 적용 */
  5. 사이트 접속 확인

     

  6. PHP 설치

    
    # yum -y install php php-mysql php-pdo php-gd php-mbstring
    # echo "<?php phpinfo(); ?>" > /var/www/html/info.php    /* php 정보 출력 페이지 생성 */
    
    # chmod 777 /var/lib/php/session/ /* 그리고 세션 사용을 오픈 해야 됩니다. 셔센은 로그인 할때에 많이 사용하게 됩니다. */
    # systemctl restart httpd
    
    
  7. info.php 사이트 확인

     

     

     

  8. MariaDB 설치

    
    # yum -y install mariadb-server mariadb
    
    # systemctl start mariadb   /* Maria DB 가동 */
    # mysql_secure_installation /* 설정을 합니다. */
    
    항목을 하나하나 알아볼께요
    
    Enter current password for root (enter for none) : 이 부분은 현재 루트 비번이 없기 때문에 엔터치시면 됩니다.
    Set root password ? [Y/n]  : y를 누르고 root 패스워드를 설정합니다. 두번 비번을 입력하게 됩니다.
    Remove anonymous users? [Y/n] ; 익명 접근을 막을것이냐? 라고 묻습니다. 보안상 y 누르고 엔터치세요.
    Disallow root login remotely? [Y/n] ; root 계정으로 원격 접속을 막을 것인가? 보안상 y 누르고 엔터 치세요
    Remove test database and access to it? [Y/n] ; test 용으로 사용된 데이타 베이스를 삭제할것이냐? y 엔터 치시면 됩니다.
    Reload privilege tables now? [Y/n] ; 지금까지 설정한 값을 적용할것이냐? y 엔터 치시면 됩니다.