Lighttpd, MySQL 및 PHP-FPM을 사용하여 Ubuntu 20.04 서버 설정
Lighttpd는 성능 면에서 Nginx에 필적하는 빠르고 유연한 오픈 소스 웹 서버입니다. Lighttpd 서버에서 WordPress, Magento 등과 같은 PHP 애플리케이션을 호스팅하려면 서버에 LLMP 스택을 설정해야 합니다. LLMP는 Linux, Lighttpd, MySQL 및 PHP를 나타냅니다.
Lighttpd의 성능 덕분에 LLMP 스택은 주어진 트래픽 볼륨에서 설정된 LAMP(Apache)보다 쉽게 성능이 향상됩니다. LLMP 대 LEMP(Nginx)가 진행되는 한 성능은 대부분 비슷합니다. 그러나 Nginx는 대중들 사이에서 더 인기 있는 선택이기 때문에 LEMP 설정에 대한 탁월한 커뮤니티 지원이 있습니다.
최소한의 메모리 소비로 많은 양의 트래픽을 처리할 서버를 찾고 있다면 LLMP 설정이 좋은 선택입니다. 이 가이드에서는 Ubuntu 20.04 LTS 시스템에 LLMP 스택을 설치하는 방법을 살펴보겠습니다.
전제 조건
Ubuntu 20.04 LTS 서버가 필요하고 다음으로 로그인해야 합니다. 수도
활성화된 사용자. 또한 Linux 명령에 대한 기본적인 이해도 필요합니다.
시작하기 전에 아래 명령을 실행하여 Ubuntu 20.04 서버에서 패키지를 업데이트 및 업그레이드하십시오.
sudo apt-get 업데이트 및 apt-get 업그레이드
Lighttpd 웹 서버 설치
Ubuntu 20.04 시스템에 Lighttpd 웹 서버를 설치하려면 터미널에 다음 명령을 입력하기만 하면 됩니다.
sudo apt-install lighttpd
설치 프로세스가 완료되면 다음 명령을 입력하여 Lighttpd 웹 서버를 시작하고 활성화합니다.
systemctl lighttpd 시작 systemctl lighttpd 활성화
Lighttpd 서버의 상태를 확인하려면 아래와 같은 명령어를 입력하세요.
systemctl 상태 표시등tpd
💡 팁: (END)가 쓰여진 마지막 줄을 제거하려면 ESC
그리고 큐
추가 명령을 입력할 수 있습니다.
이제 UFW 방화벽에서 HTTP, HTTPS 및 SSH 서비스를 설정합니다. UFW는 복잡하지 않은 방화벽이라고도 하는 Ubuntu의 기본 방화벽 구성 도구입니다. 다음 명령을 입력하고 Enter 키를 하나씩 누릅니다.
sudo ufw 허용 ssh sudo ufw 허용 http sudo ufw 허용 https
다음 명령을 실행하여 UFW 방화벽을 활성화하십시오.
sudo ufw 활성화
'명령이 기존 ssh 연결을 중단시킬 수 있습니다'라는 메시지가 표시되면 다음을 입력합니다. 와이
그리고 치다 시작하다
.
Lighttpd 설치를 확인하려면 웹 브라우저에서 해당 IP 주소로 서버에 액세스합니다. 다음 화면이 표시되면 Lighttpd 웹 서버가 Ubuntu 20.04 시스템에 성공적으로 설치되었음을 의미합니다.
MySQL 서버 설치 및 구성
MySQL은 구조화된 쿼리 언어를 기반으로 하는 관계형 데이터베이스 관리 시스템입니다. Ubuntu 20.04에 MySQL 서버와 클라이언트를 설치하려면 다음 명령을 복사하여 붙여넣고 다음을 누르십시오. 시작하다
.
sudo apt-get mysql-server mysql-client 설치
설치 후 이 작업에 247MB의 추가 디스크 공간이 필요하다는 메시지가 표시됩니다. 그래서, 입력 와이
그리고 치다 시작하다
.
설치 프로세스가 완료되면 MySQL 서버를 시작 및 활성화하고 다음 명령을 하나씩 실행하여 시스템 부팅에 추가합니다.
systemctl mysql 시작 systemctl mysql 활성화
화면에 다음 메시지가 표시됩니다.
MySQL 서비스의 상태를 확인하려면 터미널에 다음 명령을 입력하십시오. 그만큼 mysql.service
상태는 "활성(실행 중)"으로 표시되어야 합니다.
systemctl 상태 mysql
MySQL 보안 설정을 구성하려면, MySQL 패키지와 함께 제공되는 보안 스크립트를 실행합니다. 다음 명령을 입력하고 Enter 키를 눌러 스크립트를 실행합니다.
mysql_secure_installation
위의 명령은 MySQL 서버를 구성하기 위한 몇 가지 질문을 표시합니다.
다음을 사용하여 비밀번호를 설정하라는 메시지가 표시됩니다. 비밀번호 구성 요소 확인
. 이 플러그인은 MySQL 데이터베이스에 대한 강력한 암호를 설정하는 데 도움이 됩니다. 누르다 와이
이 플러그인을 활성화하려면 Enter 키를 누르십시오. 유형 0
, 1
, 또는 2
암호의 강도 수준을 결정하는 암호 유효성 검사 정책을 선택합니다.
강력한 비밀번호를 입력하고, 그만큼 비밀번호 확인
플러그인은 암호의 예상 강도에 대해 알려줍니다. 누르다 와이
그리고 치다 시작하다
.
보안 암호를 설정한 후 아래 설명과 같이 나머지 설정을 구성합니다.
- 익명 사용자 제거 - 입력하다
Y|Y
기본적으로 MySQL에는 사용자 계정 없이 누구나 MySQL 서버에 연결할 수 있는 익명의 사용자가 포함되어 있기 때문입니다. 따라서 제거하십시오.
- 원격으로 루트 로그인을 허용하지 않음 - 입력하다
Y|Y
루트는 'localhost'에서만 허용되어야 하기 때문입니다. 누군가가 네트워크 외부에서 루트로 로그인할 수 없도록 합니다.
- 테스트 데이터베이스 및 액세스를 제거하시겠습니까? - 입력하다
Y|Y
MySQL은 누구나 액세스할 수 있는 테스트 데이터베이스와 함께 제공되기 때문입니다. 따라서 프로덕션 환경으로 이동하기 전에 제거하십시오.
- 지금 권한 테이블을 다시 로드하시겠습니까? 입력하다
Y|Y
이렇게 하면 지금까지 변경한 내용이 즉시 적용되기 때문입니다.
MySQL 서버에 액세스할 수 있는 모든 사용자를 확인하려면 먼저 아래 명령을 사용하여 루트로 MySQL에 로그인합니다.
mysql -u 루트 -p
그런 다음 다음 명령을 실행하여 MySQL 서버의 사용자 목록을 가져옵니다.
mysql.user에서 사용자, 호스트를 선택하십시오.
사용자 목록을 확인했으면 다음을 입력합니다. 출구
MySQL 셸에서 로그아웃합니다.
PHP 설치 – 빠른 CGI 프로세스 관리자(PHP-FPM)
PHP-FPM은 서버가 저사양 서버에서도 엄청난 양의 로드를 처리할 수 있도록 합니다. 특정 PHP 애플리케이션에서 로딩 시간을 300% 단축한다고 주장합니다.
최신 PHP-FPM 패키지를 설치하려면 다음 명령을 실행하고 Enter 키를 누르십시오.
sudo apt-install php-fpm php-cgi php-mysql
PHP-FPM 구성 미세 조정 일부 변경을 통해 php.ini
파일.
이를 수행하려면 먼저 디렉토리로 이동하십시오./etc/php/7.4/fpm
를 사용하여 CD
아래와 같이 명령합니다.
CD /etc/php/7.4/fpm
그런 다음 아래 명령을 사용하여 엽니다. php.ini
vim 편집기에서 파일.
vim php.ini
주석 제거 cgi.fix_pathinfo=1
라인. '가 포함된 행을 검색합니다.cgi.fix_pathinfo=1
' 편집기에서. 이렇게 하려면 'ESC
' 및 유형 /cgi.fix_pathinfo=1
그리고 치다 시작하다
.
그런 다음 나
삽입 모드로 전환하고 제거하려면 ;
줄 앞에 (세미콜론) 기호를 누르거나 엑스
줄의 주석을 해제하는 버튼 php.ini
파일.
완료되면 파일에서 변경한 내용을 저장하고 다음을 눌러 vim 편집기를 종료합니다. ESC
명령 모드로 들어간 다음 다음을 입력하십시오. :wq
그리고 치다 시작하다
편집기를 종료합니다.
PHP-FPM 시작 및 활성화 다음 명령을 실행하여:
systemctl php7.4-fpm 시작 systemctl php7.4-fpm 활성화
PHP-FPM의 상태를 확인하려면 다음 명령을 실행합니다.
systemctl 상태 php7.4-fpm
Lighttpd 및 PHP-FPM 구성
이제 몇 가지 변경 사항을 적용할 것입니다. 15-fastcgi-php.conf
Lighttpd 및 PHP-FPM을 구성하기 위한 구성 파일입니다.
이 명령을 입력하여 적절한 디렉토리로 이동하고 Enter 키를 누르십시오.
cd etc/lighttpd/conf-available/
'의 사본을 보관하려면15-fastcgi-php.conf
' 파일을 만든 다음 아래 명령을 사용하십시오.
cp 15-fastcgi-php.conf 15-fastcgi-php.conf.orig
이제 아래 명령을 사용하여 vim 편집기를 사용하여 이 파일을 열고 편집합니다.
vim 15-fastcgi-php.conf
여기에서 기본 PHP-CGI 구성 내용을 아래 표시된 내용으로 바꿉니다.
fastcgi.server += ( ".php" => (( "소켓" => "/var/run/php/php7.4-fpm.sock", "broken-scriptfilename" => "enable" )) )
이렇게 하려면 아래와 같이 특정 순서로 단계를 따르십시오.
- 누르다 '
ESC
' 그리고 '나
'를 눌러 삽입 모드로 들어갑니다. - 이제 다음을 사용하여 삭제해야 하는 줄로 이동합니다.
위로
또는아래에
화살표 키(위쪽 및 아래쪽 화살표 키는 vi 편집기가 아닌 vim 편집기에서 작동함). - 특정 라인을 삭제하려면
dd
. 그리고 단일 워드 프레스를 제거하려면엑스
. - 이제 파일에 위의 코드를 복사/붙여넣기 합니다.
- 그런 다음 파일을 저장하고 다음을 눌러 vim을 종료합니다.
ESC
,:wq
, 그리고시작하다
.
이제 Lighttpd는 PHP-FPM에서 적절하게 작동하며 적절하게 구성됩니다.
FastCGI Lighttpd 모듈 활성화 아래 명령을 사용하여:
lighttpd-enable-mod fastcgi lighttpd-enable-mod fastcgi-php
마지막으로 Lighttpd 웹 서버를 다시 시작하여 새 구성 및 설정을 적용합니다.
systemctl 다시 시작 lighttpd
테스트 LLMP 서버
새로 생성된 LLMP 서버를 테스트하기 위해 다음의 공용 디렉토리 루트에 파일을 생성합니다. /var/www/html
.
먼저 다음을 사용하여 디렉토리로 이동합니다. CD
아래와 같이 명령합니다.
CD /var/www/html/
새 파일 만들기 의 말을하자파일.php
vim 편집기를 사용하여 아래와 같이.
vim 파일.php
이제 다음을 눌러 삽입 모드로 들어가 편집기에 이 간단한 스크립트를 입력합니다. 나
.
를 눌러 파일을 저장하고 종료합니다. ESC
그리고 :wq
.
그만큼 phpinfo()
php와 관련된 정보를 불러오는 함수입니다. 이 스크립트는 작동 여부를 테스트하기 위한 것입니다. 원하는 다른 PHP 스크립트를 사용할 수도 있습니다.
마지막으로 서버를 테스트하기 위해 웹 브라우저를 열고 다음 주소를 입력하여 방금 만든 파일에 액세스합니다. //당신의 서버-ip/file.php
.
결과적으로 PHP 버전 페이지가 나타나면 LLMP 스택이 Ubuntu 20.04 시스템에 성공적으로 설치되었다고 안전하게 말할 수 있습니다. 이제 서버에서 실행하려는 PHP 응용 프로그램을 설치할 수 있습니다.