웹사이트 검색

CentOS 8에서 PHP-FPM 및 MariaDB로 Lighttpd를 설치하는 방법


이 튜토리얼은 다음 OS 버전에 대해 존재합니다.

  • 센트OS 8
  • 센트OS 5.6

이 페이지에서

  1. 1단계 - Lighttpd 웹 서버 설치
  2. 2단계 - MariaDB 데이터베이스 서버 설치
  3. 3단계 - PHP-FPM 설치 및 구성
  4. 4단계 - Lighttpd 및 PHP-FPM 설정
    1. - FastCGI 모듈 활성화\n
    2. - PHP-FPM 서비스와 함께 사용\n
    3. - 자체 생성 PHP 서비스 사용

    Lighttpd는 단순성과 고성능에 중점을 둔 오픈 소스 웹 서버입니다. 작고 메모리 사용량이 적은 가벼운 웹 서버이지만 여전히 표준 준수, 보안 및 유연성을 유지합니다. Lighttpd 웹 서버러는 Linux, Lighttpd, MySQL/MariaDB 및 PHP/PHP-FPM을 나타내는 LLMP 스택의 일부입니다.

    이 튜토리얼에서는 CentOS 8 서버에서 LLMP 스택을 설치하고 구성하는 방법을 보여줍니다. MariaDB 데이터베이스 서버와 함께 Lighttpd 웹 서버를 설치하고 최신 버전의 CentOS 8 서버에 PHP-FPM을 설치합니다.

    전제 조건

    • CentOS 8 서버
    • 루트 권한\n
    • 기본 CentOS 서버 이해\n

    우리는 무엇을 할 것인가?

    • Lighttpd 웹 서버 설치
    • MariaDB 데이터베이스 서버 설치
    • PHP-FPM 설치
    • Lighttpd 및 PHP-FPM 설정
    • 테스트

    1단계 - Lighttpd 웹 서버 설치

    먼저 EPEL 저장소를 추가하고 Lighttpd 웹 서버를 CentOS 8 시스템에 설치합니다. 기본적으로 Lighttpd는 EPEL(Extract Packages for Enterprise Linux) 리포지토리에서 사용할 수 있습니다.

    아래 DNF 명령을 사용하여 EPEL 저장소를 CentOS 8 시스템에 추가합니다.

    sudo dnf install epel-release

    그런 다음 다음 명령을 사용하여 사용 가능한 모든 리포지토리를 확인합니다.

    dnf repolist

    이제 결과에 대한 EPEL 저장소를 얻었는지 확인하십시오.

    다음으로 아래 명령을 사용하여 Lighttpd 패키지를 설치합니다.

    sudo dnf install lighttpd -y

    모든 설치가 완료되면 Lighttpd 서비스를 시작하고 시스템 부팅에 추가하십시오.

    systemctl start lighttpd
    systemctl enable lighttpd

    이제 다음 명령을 사용하여 Lighttpd 서비스 상태를 확인하십시오.

    systemctl status lighttpd

    아래는 당신이 얻을 결과입니다.

    결과적으로 Lighttpd 서비스가 CentOS 8 시스템에서 실행됩니다.

    다음으로 아래의 firewall-cmd 명령을 사용하여 방화벽 규칙 목록에 HTTP 서비스를 추가합니다.

    firewall-cmd --add-service=http --permanent
    firewall-cmd --reload

    이제 웹 브라우저를 열고 주소 표시줄에 서버 IP 주소를 입력하십시오.

    결과적으로 Lighttpd 웹 서버의 기본 index.html을 얻게 됩니다.

    2단계 - MariaDB 데이터베이스 서버 설치

    이 단계에서는 MariaDB 데이터베이스 서버를 설치하고 MariaDB 서버의 기본 루트 암호를 설정합니다.

    MariaDB 데이터베이스 서버를 설치하려면 아래의 dnf 명령을 실행하십시오.

    sudo dnf install mariadb-server -y

    모든 설치가 완료되면 MariaDB 서비스를 시작하고 시스템 부팅에 추가하십시오.

    systemctl start mariadb
    systemctl enable mariadb

    이제 아래 명령을 사용하여 MariaDB 서비스를 확인하십시오.

    systemctl status mariadb

    아래는 당신이 얻을 결과입니다.

    결과적으로 MariaDB 서비스가 CentOS 8 시스템에서 실행됩니다.

    다음으로 아래의 mysql_secure_installation 명령을 실행하여 기본 루트 암호를 설정합니다.

    mysql_secure_installation

    이제 MariaDB 서버의 새 비밀번호를 입력하고 모든 구성에 대해 Y를 입력하십시오.

    Enter current password for root (enter for none): 
    OK, successfully used password, moving on...

    Set a root password? [Y/n] Y
    Remove anonymous users? [Y/n] Y
    Disallow root login remotely? [Y/n] Y
    Remove test database and access to it? [Y/n] Y
    Reload privilege tables now? [Y/n] Y

    그리고 MariaDB 루트 암호가 구성되었습니다.

    다음으로 기본 루트 사용자와 암호를 사용하여 MySQL 셸에 로그인합니다.

    mysql -u root -p

    로그인한 후 다음 쿼리를 사용하여 MariaDB 서버에서 사용 가능한 모든 사용자를 확인하십시오.

    select User,Host from mysql.user;

    그리고 MySQL 서버의 모든 기본 사용자를 얻게 됩니다. 이제 exit를 입력하여 MySQL 셸에서 로그아웃합니다.

    이로써 CentOS 8 시스템에 MariaDB 데이터베이스 서버 설치 및 구성이 완료되었습니다.

    3단계 - PHP-FPM 설치 및 구성

    이 단계에서는 Lighttpd 웹 서버용 PHP-FPM을 설치하고 구성합니다.

    아래의 dnf 명령을 사용하여 PHP 및 PHP-FPM 패키지를 설치합니다.

    sudo dnf install php php-fpm lighttpd-fastcgi php-mysqlnd php-pdo php-gd php-mbstring

    모든 설치가 완료되면 vim 편집기를 사용하여 구성 /etc/php-fpm.d/www.conf를 편집합니다.

    vim /etc/php-fpm.d/www.conf

    아래와 같이 기본 사용자 및 그룹을 Lighttpd로 변경합니다.

    user = lighttpd
    group = lighttpd

    포트 9000으로 로컬 IP 주소를 사용하여 기본 PHP-FPM 청취를 변경합니다.

    listen = 127.0.0.1:9000

    저장하고 닫습니다.

    다음으로 vim 편집기를 사용하여 PHP 구성 /etc/php.ini를 편집합니다.

    vim /etc/php.ini

    Lighttpd 웹 서버에 대한 PHP-CGI 지원을 받으려면 다음 줄의 주석을 제거하십시오.

    cgi.fix_pathinfo=1

    저장하고 닫습니다.

    다음으로 PHP-FPM 서비스를 시작하고 시스템 부팅에 추가합니다.

    systemctl start php-fpm
    systemctl enable php-fpm

    PHP-FPM 서비스가 시작되어 실행 중입니다. 다음 명령을 사용하여 확인하십시오.

    ss -plnt
    systemctl status php-fpm

    아래는 당신이 얻을 결과입니다.

    결과적으로 PHP-FPM은 로컬 IP 주소와 포트 9000을 사용하여 CentOS 8 서버에서 실행됩니다.

    4단계 - Lighttpd 및 PHP-FPM 설정

    이 단계에서는 PHP-FPM 설치와 함께 작동하도록 Lighttpd를 구성합니다.

    기본적으로 Lighttpd는 두 가지 방법으로 PHP 웹 애플리케이션을 제공하는 데 사용할 수 있습니다.

    1. PHP-FPM 서비스를 통해 제공\n
    2. 자체 생성 PHP-CI를 통해 제공\n

    이를 위해 Lighttpd 웹 서버에서 FastCGI 모듈을 활성화하고 FastCGI 모듈 구성 파일에 구성을 추가해야 합니다.

    - FastCGI 모듈 활성화

    더 진행하기 전에 /etc/lighttpd/ 디렉토리로 이동하고 vim 편집기를 사용하여 구성 module.conf를 편집하십시오.

    cd /etc/lighttpd/
    vim modules.conf

    아래와 같이 FastCGI 모듈의 주석을 해제합니다.

    ##
    ## FastCGI (mod_fastcgi)
    ##
    include "conf.d/fastcgi.conf"

    저장하고 닫습니다.

    다음으로 PHP 구성을 conf.d/fastcgi.conf 구성 파일에 추가해야 합니다.

    /etc/lighttpd 디렉토리 내에서 vim 편집기를 사용하여 FastCGI 구성 conf.d/fastcgi.conf를 편집합니다.

    vim conf.d/fastcgi.conf

    - PHP-FPM 서비스와 함께 사용

    TCP 포트 9000으로 로컬 IP 주소에서 이미 실행 중인 PHP-FPM 서비스를 사용하려면 다음 구성을 붙여넣습니다.

    fastcgi.server += ( ".php" =>
            ((
                    "host" => "127.0.0.1",
                    "port" => "9000",
                    "broken-scriptfilename" => "enable"
            ))
    )

    저장하고 닫습니다.

    - Self Spawning PHP 서비스 이용

    다음으로 Lighttpd용 자체 생성 PHP-CGI를 사용하려면 다음 구성을 붙여넣습니다.

    fastcgi.server = ( ".php" => 
            ((
                    "bin-path" => "/usr/bin/php-cgi",
                    "socket" => "/var/run/lighttpd/php.socket",
                    "max-procs" => 4,
                    "bin-environment" => (
                    "PHP_FCGI_CHILDREN" => "",
                    "PHP_FCGI_MAX_REQUESTS" => "500"
                        ),
                    "broken-scriptfilename" => "enable"
            ))
    )

    저장하고 닫습니다.

    다음으로 새 디렉터리 /var/run/lighthttpd를 만들고 해당 디렉터리의 소유권을 lighttpd 사용자로 변경합니다.

    mkdir -p /var/run/lighttpd
    sudo chown -R lighttpd:lighttpd /var/run/lighttpd

    이제 Lighttpd 서비스를 다시 시작하여 새 구성을 적용하십시오.

    systemctl restart lighttpd

    오류가 없는지 확인하고 결과적으로 PHP-FPM 서비스 또는 산란 PHP-CGI를 사용하여 Lighttpd 구성이 성공적으로 완료되었습니다.

    5단계 - 테스트

    LLMP 설치를 테스트하기 위해 기본 Lighttpd 문서 루트 디렉토리에 새 phpinfo 파일을 생성합니다.

    /var/www/lighttpd 디렉토리로 이동하고 vim 편집기를 사용하여 새 php 파일 info.php를 만듭니다.

    cd /var/www/lighttpd/
    vim info.php

    다음 스크립트를 붙여넣습니다.

    <?php
    phpinfo();
    ?>

    저장하고 닫습니다.

    다음으로 웹 브라우저를 열고 아래와 같이 info.php 파일 다음에 서버 IP 주소를 입력합니다.

    이제 아래와 같은 결과를 얻을 수 있습니다.

    보시다시피 PHP-FPM은 Lighttpd 웹 서버와 함께 작동합니다.

    그 결과 CentOS 8 서버에 LLMP Stack(Linux, Lighttpd, MariaDB, PHP-FPM) 설치가 성공적으로 완료되었습니다.

    6단계 - 추가: PHP 및 Lighttpd 서비스 확인

    아래 구성을 사용하여 slef 생성 PHP 서비스로 Lighttpd를 실행하는 경우.

    아래 명령을 사용하여 PHP 서비스를 확인할 수 있습니다.

    ss -pl | grep php
    systemctl status php-fpm

    아래는 당신이 얻을 결과입니다.

    보시다시피 self-spawned PHP 프로세스는 4 소켓 파일에서 실행됩니다. PHP-FPM 서비스가 다운되더라도 Lighttpd는 여전히 PHP 애플리케이션 처리를 위해 작동합니다.