[PHP] PHP/APACHE/MySQL (APM) 수동 설치

2019. 4. 23. 10:58· WEB/PHP
반응형

[PHP] PHP/APACHE/MySQL (APM) 수동 설치


설치 순서는 다음과 같다.
( OS : CentOS 7 )
1. Apache  : 최신 버전 ( 2.4.6 )
2. MySQL   : 7.5      <- 하위 버전이기 때문에 수동 설치
3. PHP       : 5.3.29  <- 하위 버전이기 때문에 수동 설치
4. PHP 설정 파일 (php.ini) 수정
5. 아파치 설정 파일 (httpd.conf) 수정

1. Apache 설치

    yum 으로 간단히 설치 가능하다.

$ yum install apache

 

2. MySQL 설치

   ( 참고 : https://www.linode.com/docs/databases/mysql/how-to-install-mysql-on-centos-7 )

   아래 커멘드 순서대로 하면 MySQL 서버(mysql-server)가 설치 완료된다.

$ sudo yum update
$ yum install wget
$ wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
$ sudo rpm -ivh mysql-community-release-el7-5.noarch.rpm
$ yum update
$ sudo yum install mysql-server

   그 다음 현재 루트 계정에 비밀번호가 없기 때문에 비밀번호를 만들어 준다.

   my.cnf 파일을 열어 [mysqld] 하단에 skip-grant-tables 옵션을 추가하여, 패스워드 없이 로그인이 가능하도록 한다.

   기본적으로 /etc/ 폴더 밑에 my.cnf 가 존재하며, vim (vi) 로 열어 수정해준다.

$ vim /etc/my.cnf
[mysqld]
..중략..
skip-grant-tables

   mysql 서버를 시작한 후 mysql에 접속해서 루트 계정에 대한 비밀번호를 변경한다.

# mysql 서버 시작
$ sudo service mysqld start

# mysql 접속
$ mysql –uroot mysql
mysql> UPDATE user SET password=PASSWORD('패스워드') WHERE user='root';

 

3. PHP 설치

    1) https://www.php.net/releases/ 에서 원하는 버전 (PHP5.3.29) tar 다운받는다.

    2) 의존성 라이브러리들을 설치한다.

       필요 없는 라이브러리가 있다면 해당 라이브러리를 빼고 해도 상관 없다.

$ yum -y install libxml2-devel bzip2-devel libcurl-devel gdbm-devel libvpx libvpx-devel libjpeg-turbo-devel libpng-devel libXpm \
libXpm-devel freetype-devel t1lib t1lib-devel gmp-devel libc-client libc-client-devel pam-devel libicu libicu-devel openldap-devel \
readline-devel libedit-devel libtidy libtidy-devel libxslt libxslt-devel expat* krb5-devel openssl-devel db4-devel

   3) libmcrypt 설치 및 심볼릭 링크 생성한다. 

$ wget http://www.atblog.co.kr/file/package/libmcrypt-2.5.8.tar.gz
$ tar zxvf libmcrypt-2.5.8.tar.gz
$ cd libmcrypt-2.5.8
$ ./configure
$ make
$ make install
$ ln -s /usr/local/lib/libmcrypt.so.4 /usr/local/lib64/libmcrypt.so.4

   4) 다운받은 PHP .tar 파일 압축 해제한다.

$ tar zxvf php-5.3.29.tar.gz
$ cp php-5.3.29

   5) apxs 설치

# apxs 가 설치 되어 있는지 확인한다.
$ find / name 'apxs' -print 

# 설치 되어 있지 않는 경우 설치한다.
$ yum install httpd-devel

   6) PHP 설치

     apxs2 경로는 설치한 apxs 경로를 입력하면 되며,

     config-file-path 는 php.ini 파일 넣어둘 설정 폴더이다.

$ ./configure --prefix=/usr/local/php\
--with-mysql=mysqlnd\
--with-pdo-mysql=mysqlnd\
--with-mysqli=mysqlnd\
--with-apxs2=/usr/bin/apxs\
--with-config-file-path=/usr/local/apache/conf\
--with-regex=php\
--with-zlib\
--disable-debug\
--enable-calendar\
--enable-ftp\
--enable-sockets\
--enable-sysvsem\
--enable-sysvshm\
--with-gd\
--enable-mbstring

$ make
$ make install

   7) MySQL 과 PHP 연결

$ yum install php-mysql

4. PHP 설정 파일 (php.ini) 수정

   1) php-5.3.29 폴더 안에 php.ini-development 파일을 PHP설치시 config-file-path에 입력한 폴더 안에 php.ini으로

      이름을 변경하여 넣어준다.

$ cp php.ini-development /usr/local/apache/conf/php.ini

   2) php.ini 파일 수정한다.

       - mysql 사용을 위해 주석 제거한다.

extension=php_mysql.dll
extension=php_mysqli.dll
extension=php_pdo_mysql.dll

       - 시간대 변경

date.timezone = "Asia/Seoul"

       - 인코딩 변경 ( 한글 )

default_charset = 'utf8'

 

 

5. 아파치 설정 파일 (httpd.conf) 수정

    파일은 /etc/httpd/conf/ 에 있다.

    - AddType application/x-gzip .gz .tgz 밑에 두줄 추가한다.

AddType application/x-httpd-php .php .html
AddType application/x-httpd-php-source .phps

    - 문서 루트(DocumentRoot) 경로 변경 -> 필수 사항은 아님.

DocumentRoot "/var/www/html"

    - LoadModule Php5_module이 되었는지 확인 없을 경우 추가한다.

      현재 php5.X.X 버전을 다운 받았기 때문에 PHP5_module 이며,

      만약 php7.X.X 버전을 다운 받은 경우 PHP7_module 이 된다.

LoadModule php5_module /usr/lib64/httpd/modules/libphp5.so

    - DirectoryIndex 에 index.php 추가한다.

DirectoryIndex index.php index.html

 

아파치 시작/종료

# 아파치 시작
$ sudo service httpd start

# 아파치 재시작
$ sudo service httpd restart

# 아파치 종료(중지)
$ sudo service httpd stop

 

MySQL 시작/종료

# Mysql 시작
$ sudo service mysqld start

# Mysql 재시작
$ sudo service mysqld restart

# Mysql 종료(중지)
$ sudo service mysqld stop

 

 

 

 

반응형
저작자표시 비영리 변경금지 (새창열림)

'WEB > PHP' 카테고리의 다른 글

[PHP] php 코드 자동 정렬해주는 사이트  (0) 2019.05.17
[PHP] Database 접속 확인 코드  (0) 2019.04.22
'WEB/PHP' 카테고리의 다른 글
  • [PHP] php 코드 자동 정렬해주는 사이트
  • [PHP] Database 접속 확인 코드
S0PH1A
S0PH1A
반응형
S0PH1A
Web Programmer
S0PH1A
전체
오늘
어제
  • 전체
    • About Me
    • Python
      • Python
      • Django
    • DataBase
      • MySQL
      • MongoDB
    • JAVA
      • JAVA
      • Spring
    • WEB
      • JavaScript
      • HTML
      • CSS
      • Vue.js
      • React
      • Nest.js
      • Node.js
      • Electron
      • PHP
    • Linux
    • Algorithm
    • 기타
    • 생각
    • App
      • ReactNative

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • install
  • django
  • nodejs
  • javascript
  • vue.js
  • Error
  • vue
  • electron
  • mysql
  • Python

최근 댓글

최근 글

hELLO · Designed By 정상우.v4.2.2
S0PH1A
[PHP] PHP/APACHE/MySQL (APM) 수동 설치
상단으로

티스토리툴바

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.