록키 리눅스 APM 설치[Rocky Linux 9.3]

록키 리눅스 APM 설치를 dnf 명령어를 이용해서 설치 해 보겠습니다. APM은 Apache, PHP, Mysql/MariaDB 의 약자로 웹 서버를 구축할 때 Apache 또는 Ngiinx, LiteSpeed 등에서 설치할 수 있습니다.

  • OS: Rocky Linux 9.1, 9.3 & Alma Linux 9.3
  • Apache 2.47 | MariaDB 11.2.2 | PHP 8.2.14

✅ 록키 리눅스 APM 설치를 위한 사전 환경 구성

  • dnf 구성
dnf -y update
# 록키 리눅스9 epel, remi 저장소 추가
dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm
dnf -y install https://rpms.remirepo.net/enterprise/remi-release-9.rpm
  • remi repo 활성화 진행
dnf --disablerepo="*" --enablerepo="remi-safe" list available

✅ 사전 패키지 설치

  • 아래의 패키지를 설치 해 줍니다.
dnf -y install gcc gcc-c++ pcre-devel make git openssl wget vim  unzip GeoIP-devel git tree cmake  expat-devel libxml2-devel openssl openssl-devel python3 curl gnupg2 libxslt-devel gd-devel perl-ExtUtils-Embed rsyslog

Apache 설치

dnf -y install httpd 
### 종속성 설치:httpd 포함 12 패키지
Dependencies resolved.
=======================================================================================================
 Package                      Architecture      Version                     Repository            Size
=======================================================================================================
Installing:
 httpd                        x86_64            2.4.57-5.el9                appstream             46 k
Installing dependencies:
 apr                          x86_64            1.7.0-12.el9_3              appstream            122 k
 apr-util                     x86_64            1.6.1-23.el9                appstream             94 k
 apr-util-bdb                 x86_64            1.6.1-23.el9                appstream             12 k
 httpd-core                   x86_64            2.4.57-5.el9                appstream            1.4 M
 httpd-filesystem             noarch            2.4.57-5.el9                appstream             13 k
 httpd-tools                  x86_64            2.4.57-5.el9                appstream             80 k
 mailcap                      noarch            2.1.49-5.el9                baseos                32 k
 rocky-logos-httpd            noarch            90.14-2.el9                 appstream             24 k
Installing weak dependencies:
 apr-util-openssl             x86_64            1.6.1-23.el9                appstream             14 k
 mod_http2                    x86_64            1.15.19-5.el9               appstream            148 k
 mod_lua                      x86_64            2.4.57-5.el9                appstream             60 k

Transaction Summary
=======================================================================================================
Install  12 Packages
--------- 생략 ----------
# 아파치 버전 확인
httpd -v
Server version: Apache/2.4.57 (Rocky Linux)
Server built:   Jul 20 2023 00:00:00

✅ 마리아디비[MariaDB] 설치

  • MariaDB를 설치 해 줍니다.
dnf install -y mariadb-server mariadb 
# 설치 확인 
rpm -qa | grep  mariadb
# 버전 확인 
mysql -V
mysql  Ver 15.1 Distrib 10.5.22-MariaDB, for Linux (x86_64) using  EditLine wrapper
  • 다른 버전을 설치가 필요한 경우 MariaDB 서버 저장소 버전을 찾은 후 직접 설치를 진행합니다. 저는 11.2 버전으로 재설치를 진행하겠습니다.
  • vi 편집기를 이용해서 yum 레포지트리 저장소에 mariaDB.repo 파일을 생성 후 MariaDB 11.2 버전 세팅 설정을 합니다.
~]# vi /etc/yum.repos.d/MariaDB.repo

# MariaDB 11.2 RedHatEnterpriseLinux repository list - created 2023-12-25 07:35 UTC
# https://mariadb.org/download/
[mariadb]
name = MariaDB
# rpm.mariadb.org is a dynamic mirror if your preferred mirror goes offline. See https://mariadb.org/mirrorbits/ for details.
# baseurl = https://rpm.mariadb.org/11.2/rhel/$releasever/$basearch
baseurl = https://tw1.mirror.blendbyte.net/mariadb/yum/11.2/rhel/$releasever/$basearch
# gpgkey = https://rpm.mariadb.org/RPM-GPG-KEY-MariaDB
gpgkey = https://tw1.mirror.blendbyte.net/mariadb/yum/RPM-GPG-KEY-MariaDB
gpgcheck = 1

~]# dnf -y install mariadb-server mariadb
MariaDB                                                                                                                                                      278 kB/s | 624 kB     00:02    
Last metadata expiration check: 0:00:01 ago on Mon Dec 25 07:59:44 2023.
Dependencies resolved.
=============================================================================================================================================================================================
 Package                                               Architecture                           Version                                        Repository                                 Size
=============================================================================================================================================================================================
Installing:
 MariaDB-client                                        x86_64                                 11.2.2-1.el9                                   mariadb                                   9.1 k
 pv                                                    x86_64                                 1.6.20-1.el9                                   epel                                       65 k
--------- 생략 ----------
Transaction Summary
=============================================================================================================================================================================================
Install  16 Packages

Total download size: 31 M
Installed size: 241 M
--------- 생략 ----------
  • 버전을 변경해서 설치하고 ‘mysql -V’ 명령어를 입력하니 다음 릴리스에서 제거될 예정인 명령어라는 내용을 확인할 수 있습니다. 새로운 명령어는 ‘mariadb -V’입니다.
~]# mysql -V
mysql: Deprecated program name. It will be removed in a future release, use '/usr/bin/mariadb' instead
mysql from 11.2.2-MariaDB, client 15.2 for Linux (x86_64) using  EditLine wrapper
~]# mariadb -V
mariadb from 11.2.2-MariaDB, client 15.2 for Linux (x86_64) using  EditLine wrapper

✅ PHP 설치

  • 설치 가능한 PHP 버전을 확인하니 8.1 버전 설치가 가능하며 remi 저장소에서 다른 버전 설치가 가능한 것을 확인할 수 있습니다.
dnf module list php
  • remi 저장소에 있는 8.2 버전 설치할 수 있도록 활성화 명령어를 입력합니다. 활성화 된 버전에 [e]가 붙습니다.
dnf module list php
# PHP 버전 활성화 및 비활성화 명령어 
dnf module enable php:remi-8.2
dnf module disable php:remi-8.2
  • php를 설치해 줍니다.
  • php 버전을 확인.
~]# php -v
PHP 8.2.14 (cli) (built: Dec 20 2023 06:28:06) (NTS gcc x86_64)
Copyright (c) The PHP Group
Zend Engine v4.2.14, Copyright (c) Zend Technologies
    with Zend OPcache v8.2.14, Copyright (c), by Zend Technologies
## 워드프레스를 포함한 CMS에서 503 에러 발생 시 
## 워드프레스의 경우 mysqli가 설치되어 있지 않다는 오류가 발생할 수 있음.

almalinux 포함하여 mysqli 설치가 되어야 하며, mysqli 설치 시 종속석으로 mysqlnd가 같이 설치된다.

dnf -y install php-mysqli 

록키 리눅스 APM 설치가 완료 되었습니다.

✅ 록키 리눅스 APM 설치 설정 및 구동

1. apache 설정 및 구동

아파치 설정을 httpd.conf 파일에서 진행합니다.

~]# vi /etc/httpd/conf/httpd.conf

## apache → nobody 변경
71 User nobody
72 Group nobody

## 도메인 또는 해당 서버 IP 입력 추가
100 #ServerName www.example.com:80
101 ServerName 152.xx.xxx.xx:80

##  index.htm index.php 추가 > 디렉토리 내 아파치에 제공할 index 확장자 설정 추가
168 <IfModule dir_module>
169     DirectoryIndex index.html index.htm index.php
170 </IfModule>

# AddType application/x-httpd-php .php / AddType application/x-httpd-phps .phps 추가
# 아파치에서 php관련된 처리를 할 수 있게 설정한 값
288     AddType application/x-compress .Z
289     AddType application/x-gzip .gz .tgz
290     AddType application/x-httpd-php .php
291     AddType application/x-httpd-phps .phps

# 아파치 시작 / 중지: stop / 재시작 restart 
~]# systemctl start httpd
# 부팅 후 자동 실행 설정 / 비활성화: disable]
~]# systemctl enable httpd

구동 확인이 되는지 ps -ef 명령어로 확인합니다.

소개 페이지가 나오는 것까지 확인합니다. 나머지 설정을 해서 사이트가 정상적으로 나올 수 있도록 하겠습니다.

  • <Directory “/var/www”>를 <Directory “/home/””>으로 변경 해 줍니다.
~]# vi /etc/httpd/conf/httpd.conf
## 기존 디렉토리 설정을 원하는 디렉토리 설정으로 변경
#<Directory "/var/www">
#    AllowOverride None
    # Allow open access:
#    Require all granted
#</Directory>

<Directory "/home/">
    AllowOverride None
    # Allow open access:
    Require all granted
</Directory>

# Further relax access to the default document root:
#<Directory "/var/www/html">
<Directory "home">
    Options Indexes FollowSymLinks

    #
    # AllowOverride controls what directives may be placed in .htaccess files.
    # It can be "All", "None", or any combination of the keywords:
    #   Options FileInfo AuthConfig Limit
    #
    AllowOverride None

    #
    # Controls who can get stuff from this server.
    #
    Require all granted
</Directory>
vi /etc/httpd/conf.d/virtual.conf

<VirtualHost *:80>
    ServerName www.domain.com
    ServerAlias domain.com
    DocumentRoot /home/userid/www

   <Directory /home/userid/www>
        Options -Indexes +FollowSymLinks
        AllowOverride All
    </Directory>
</VirtualHost>  

2. MariaDB 구동

# 구동 
systemctl start mariadb
# 부팅 시 자동 재 시작 
systemctl enable mariadb
# 마리아 DB 환경 설정 파일 경로
vi /etc/my.cnf

록키 리눅스 APM 설치 완료 후 추가로 발생하는 오류가 있을 수 있습니다. 중간에 빠진 부분이 있는지 추가 확인 사항을 체크해 갈 수 있습니다. 잘못 설정한 부분을 찾을 수 없다면 재설치를 고려해 볼 수 있습니다.

Similar Posts

  • Apache MPM Module: Prefork, Worker, Event 3가지 방식 비교 및 Event Module 최적화 설정

    Apache MPM Module은 Apache HTTP Server의 중요한 부분으로, 서버의 요청 처리 방식을 결정합니다. MPM(Multi-Processing Module)은 서버의 성능과 확장성에 큰 영향을 미치는 역할을 합니다. 목차✅ 록키 리눅스 APM 설치를 위한 사전 환경 구성✅ 사전 패키지 설치✅ Apache 설치✅ 마리아디비[MariaDB] 설치✅ PHP 설치✅ 록키 리눅스 APM 설치 설정 및 구동1. apache 설정 및 구동2. MariaDB…

  • [Linux] 쉘(Shell)과 커널&쉘 스크립트 및 프롬프트

    리눅스에 대해 공부하면서 터미널 창에서 명령어를 입력해서 관리를 하지만 시스템 자체에 대한 공부가 리눅스 서버를 운영하는데 많은 도움이 되기 때문에 기초와 개념에 대해 알아야 할 필요성을 가지게 되었습니다. 리눅스 쉘(Shell)과 쉘 스크립트(Shell Script) 그리고 프롬프트(Prompt)의 기본 개념에 대해 알아 보겠습니다. 목차✅ 록키 리눅스 APM 설치를 위한 사전 환경 구성✅ 사전 패키지 설치✅ Apache…

  • bash: 셸 따옴표 및 셸 쌍따옴표

    bash 및 셸 프로그램에서 명령어를 치환하는데 ‘$’ 기호와 소괄호'()’를 사용하는 대신 따옴표 기호도 사용합니다. 치환은 수식의 어떤 부분에 그와 대등한 무언가로 바꿔 넣는 행위입니다. ‘셸 따옴표’와 ‘셸 쌍따옴표’의 기본 공통 사항은 확장을 제어하는데 활용된다는 것입니다. 여기에서 차이점은 셸 따옴표는 모든 확장을 제어하지만 셸 쌍따옴표는 3개의 기호를 제외하게 됩니다. 셸 쌍따옴표 제외 기호: $…

  • [Ubuntu] 우분투 설치(22.04.5) | 우분투 root 초기 비밀번호 생성

    오라클의 VitualBox로 우분투 설치를 진행해 보겠습니다. 먼저 IOS 파일을 다운로드 받기 위해 구글에서 [우분투 서버 다운로드]를 검색해서 설치하고자 하는 우분투 버전을 확인 후 다운로드를 진행합니다. 저의 경우는 22.04.5 버전을 설치하기로 했기에 예전 버전을 찾은 후 진행하였습니다. 목차✅ 록키 리눅스 APM 설치를 위한 사전 환경 구성✅ 사전 패키지 설치✅ Apache 설치✅ 마리아디비[MariaDB] 설치✅ PHP…

  • 리눅스 셸 환경(Shell Environment) 정의 및 이해와 쉘 환경변수 | Shell 시작 파일 2가지

    셸 세션을 이용해서 서버와 상호 작용을 할 때 해당 동작과 리소스에 대한 연결을 결정하기 위해 컴파일 하는 많은 정보가 있습니다. 이러한 서정 중 일부는 구성 설정에 포함되어 있으며, 다른 설정은 사용자 입력에 의해 결정됩니다. 리눅스 셸 환경은 셸의 구성 설정과 사용자 입력에 의해 결정된 설정을 유지관리 영역을 이용해 관리하는 가장 일반적인 방법을 이용하게…

  • [Linux] CentOS 7 설치 | VirtualBox 설치

    VirtualBox에 CentOS 7 설치를 진행 해 보겠습니다. 미리 다운로드 받은 ISO 파일로 이미 설정을 완료한 상태입니다. 목차✅ 록키 리눅스 APM 설치를 위한 사전 환경 구성✅ 사전 패키지 설치✅ Apache 설치✅ 마리아디비[MariaDB] 설치✅ PHP 설치✅ 록키 리눅스 APM 설치 설정 및 구동1. apache 설정 및 구동2. MariaDB 구동 ✅ CentOS 7 설치 진행 Install…

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

Prove your humanity: 0   +   4   =