안녕하세요 유똥입니다.
오늘은 APM Yum설치 시 , 기본 APM 버전은 Apache 2.4 / php 5.4 / mariaDB 5.5 입니다.
repo CentOS 7의 표준 yum리포지터리에서는 기본 php 5.4 mariaDB 5.5로 설치가 되기 때문에, 이 글에서는 다른 버전에 관련하여 설치를 진행하겠습니다.
[ 설치 환경 ]
OS | CentOS 7.6 |
Apache 2.4 | |
PHP 7.3 | |
MariaDB 10.3 |
1. Apache 설치
yum -y install httpd
1-1. Apache 실행
systemctl start httpd
2. MariaDB repository 설정
downloads.mariadb.org/mariadb/repositories/
접속하면 리눅스 배포본에 따라 각 repository로 부터 설치할 수 있는 방법을 제시해준다. 여기서 제시하는 방법대로 따라하도록 하자.
2-2. MariaDB repository 설정
vi /etc/yum.repos.d/MariaDB.repo
# MariaDB 10.3 CentOS repository list - created 2021-01-26 06:31 UTC
# http://downloads.mariadb.org/mariadb/repositories/
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.3/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
2-3. MariaDB 설치
yum install -y MariaDB-server MariaDB-client
2-4. MariaDB 패스워드 초기화
/usr/bin/mysqld_safe --skip-grant-tables &
2-5. MariaDB 시작
systemctl start mariadb
3-1. php 7.3 Remi 레포지토리 추가
CentOs7과 Fedora 배포판에서 php 7.3은 Remi 레포지토리를 추가하여 설치 할 수 있다.
yum -y install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
yum -y install epel-release yum-utils
3-2. php 5.4 비활성화
기본으로 php 5.4가 적용되는데 레포지토리에서 비활성화 하고 7.3을 활성화 해준다.
yum-config-manager --disable remi-php54
yum-config-manager --enable remi-php73
3-3. PHP 설치
yum install -y php php-mysql php-mbstring php-pdo php-gd
php-mbstring : 다국어 처리 모듈
php-gd : 이미지 처리 모듈
php-mysql : PHP-MySQL 연동 모듈. MariaDB에서도 작동함. 반드시 필요.
( php-mcrypt 모듈은 보안상의 이유로 PHP 7.2에서 삭제되었다고 합니다. )
3-4. Apache PHP 연동을 위해 httpd.conf 내용 추가
vi /etc/httpd/conf/httpd.conf
AddType application/x-gzip .gz .tgz // 이 부분 찾아서 아래 2줄 추가 후 저장
AddType application/x-httpd-php .php .html .htm .inc
AddType application/x-httpd-php-source .phps
위에 내용은 아래의 내용 참고 부탁드립니다.
AddType application/x-tar .tgz : AddType은 MIME 설정 파일인 mime.types에 정의되어 있지 않은 타입을 추가로 설정하고자 할 때에 사용됩니다.
그럼 MIME type 무엇일까??
MIME type이란 Multipurpose Internet Mail Extensions의 약어로 메시지 컨텐트 형식을 정의하기 위한 인터넷 표준을 말합니다. MIME 메시지는 텍스트, 이미지, 오디오, 비디오, 및 기타 애플리케이션의 특정 데이터를 포함할 수 있으며 일반적으로 홈페이지 상에 표현되는 멀티미디어 데이터에 대한 형식을 말합니다. 클라이언트의 웹브라우저나 웹사이트를 제공하는 웹서버에서 MIME Type이 등록되지 않는다면 사용자들은 해당하는 컨텐트를 웹브라우저에서 볼 수 없게 됩니다. 공식 MIME 정보는 IETF(Internet Engineering Task Force)에서 RFC 기준으로 정의하고 있습니다.
DirectoryIndex : 웹사이트의 초기페이지 문서로 어떤 파일을 사용할 것인가를 결정하는 지시자입니다.
적힌 순서에 따라 읽어 들이며 위에 지정한 목록들이 디렉터리에 없다면 Options 지시자에 Indexes 또는 All이 지정되어 있을 경우 디렉토리내의 파일리스트를 보여줍니다.
3-5. Apache PHP 연동을 위해 php.ini 수정
vi /opt/php/lib/php.ini
↓ 내용 수정 ↓
short_open_tag = On
PHP를 설치하셨다면 php.ini 파일이 존재할 것입니다.
이 파일을 열면 short_open_tag라는 부분이 있는데
short_open_tag=Off로 되어있으면
short_open_tag=On으로 바꿔줍시다.
PHP를 여는 태그의 짧은 형식을 허용해주는 것입니다.
3-6. 방화벽 설정
Centos 7 기본 방화벽은 firewall 입니다.
아파치 웹서버를 외부에서 웹브라우저로 접속하기 위해서는 TCP 80 포트를 방화벽에서 열어줘야만 한다.
추가
firewall-cmd --permanent --zone=public --add-port=80/tcp
# 적용
firewall-cmd --reload
# 확인
firewall-cmd --list-all
public (active)
target: default
icmp-block-inversion: no
interfaces: eno1
sources:
services: ssh dhcpv6-client
ports: 80/tcp
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:
3-7. 연동 확인
DocumentRoot 웹 경로의 PHP 연동이 되었는지 확인해보자
웹 서버 DocumentRoot는 모든 웹 컨텐트가 저장될 디렉토리 구조이며 이 디렉토리에 위치된 컨텐츠는 웹을 통하여 공개됩니다.
# 웹경로 확인
cat /etc/httpd/conf/httpd.conf | grep DocumentRoot | grep -v "#"
DocumentRoot "/var/www/html"
# 웹경로 이동
cd /var/www/html
# 추가
vi index.php
<? phpinfo(); ?> // 저장 나가기
3-8. Apache 재시작
systemctl restart httpd
이제 브라우저를 실행해 주소창에 IP/index.php를 입력하시면 아래의 캡처처럼 연동되는 게 확인되실 겁니다.
이로서, 여기까지 진행하셨다면 APM 설치가 완료되었습니다. 모두 고생하셨습니다.
도움이 되셨다면 구독과 좋아요를
궁금한 내용이 있으시면 댓글 부탁드리겠습니다!!
'IT > Linux' 카테고리의 다른 글
리눅스 faile2ban 설치 및 설정 (0) | 2021.01.28 |
---|---|
Apache 403 Forbidden error 해결 방법 (2) | 2021.01.27 |
APM ( Apache 2.4 + PHP 5.6 + MySQL 5.7 ) yum 설치 (0) | 2021.01.26 |
APM yum 설치 (0) | 2021.01.25 |
Apache + tomcat 7 설치 및 연동 (2) (0) | 2021.01.23 |
최근댓글