서버 설치 · 4 min read · Nov 26, 2025

OpenSUSE 11.3에서 PHP5 및 MySQL 지원으로 Cherokee 설치하기

OpenSUSE 11.3에서 PHP5 및 MySQL 지원으로 Cherokee 설치하기

버전 1.0
저자: Falko Timme
Twitter에서 나를 팔로우하세요

Cherokee는 매우 빠르고 유연하며 구성하기 쉬운 웹 서버입니다. 현재 널리 사용되는 기술을 지원합니다: FastCGI, SCGI, PHP, CGI, TLS 및 SSL 암호화 연결, 가상 호스트, 인증, 실시간 인코딩, 로드 밸런싱, Apache 호환 로그 파일 등. 이 튜토리얼은 OpenSUSE 11.3 서버에 PHP5 지원( FastCGI를 통해) 및 MySQL 지원으로 Cherokee를 설치하는 방법을 보여줍니다.

이것이 당신에게 작동할 것이라는 보장은 하지 않습니다!

1 사전 참고

이 튜토리얼에서는 호스트 이름 server1.example.com과 IP 주소 192.168.0.100을 사용합니다. 이러한 설정은 귀하의 경우 다를 수 있으므로 적절한 곳에서 교체해야 합니다.

2 MySQL 5 설치하기

먼저 다음과 같이 MySQL 5를 설치합니다:

yast2 -i mysql mysql-client mysql-community-server libmysqlclient-devel

그런 다음 MySQL의 시스템 시작 링크를 생성하여(시스템이 부팅될 때마다 MySQL이 자동으로 시작되도록) MySQL 서버를 시작합니다:

chkconfig --add mysql  
/etc/init.d/mysql start

다음 명령을 실행하여

mysql_secure_installation

루트 사용자에 대한 비밀번호를 설정합니다(그렇지 않으면 누구나 귀하의 MySQL 데이터베이스에 접근할 수 있습니다!):

server1:~ # mysql_secure_installation

참고: 이 스크립트의 모든 부분을 실행하는 것이 모든 MySQL 서버에서 권장됩니다. 프로덕션 환경에서 사용 중인 서버에 대해 각 단계를 주의 깊게 읽어보세요!

MySQL에 로그인하여 보안을 설정하려면 현재 루트 사용자 비밀번호가 필요합니다. MySQL을 방금 설치했으며 루트 비밀번호를 아직 설정하지 않았다면 비밀번호는 비어 있으므로 여기서 그냥 Enter를 누르세요.

현재 루트 비밀번호 입력(없으면 Enter): <– ENTER
OK, 비밀번호를 성공적으로 사용했습니다. 계속 진행합니다…

루트 비밀번호를 설정하면 적절한 권한 없이 누구도 MySQL 루트 사용자로 로그인할 수 없도록 보장합니다.

루트 비밀번호를 설정하시겠습니까? [Y/n] <– Y
새 비밀번호: <– 원하는 MySQL 루트 비밀번호 입력
새 비밀번호를 다시 입력하세요: <– 비밀번호 확인
비밀번호가 성공적으로 업데이트되었습니다!
권한 테이블을 다시 로드하는 중..
… 성공!

기본적으로 MySQL 설치에는 익명 사용자가 있어 누구나 사용자 계정을 생성하지 않고도 MySQL에 로그인할 수 있습니다. 이는 테스트 용도로만 의도되며 설치를 조금 더 원활하게 진행하기 위한 것입니다. 프로덕션 환경으로 이동하기 전에 이들을 제거해야 합니다.

익명 사용자를 제거하시겠습니까? [Y/n] <– Y
… 성공!

보통 루트는 ‘localhost’에서만 연결할 수 있어야 합니다. 이는 누군가가 네트워크에서 루트 비밀번호를 추측할 수 없도록 보장합니다.

원격으로 루트 로그인 금지? [Y/n] <– Y
… 성공!

기본적으로 MySQL에는 누구나 접근할 수 있는 ‘test’라는 데이터베이스가 있습니다. 이것은 또한 테스트 용도로만 의도되며 프로덕션 환경으로 이동하기 전에 제거해야 합니다.

테스트 데이터베이스 및 접근 권한을 제거하시겠습니까? [Y/n] <– Y

  • 테스트 데이터베이스 삭제 중…
    … 성공!
  • 테스트 데이터베이스에 대한 권한 제거 중…
    … 성공!

권한 테이블을 다시 로드하면 지금까지 변경된 모든 사항이 즉시 적용됩니다.

지금 권한 테이블을 다시 로드하시겠습니까? [Y/n] <– Y
… 성공!

정리 중…

모든 작업이 완료되었습니다! 위의 모든 단계를 완료했다면 MySQL 설치가 이제 안전해야 합니다.

MySQL을 사용해 주셔서 감사합니다!

server1:~ #

3 PHP5 설치하기

FastCGI를 통해 Cherokee에서 PHP5를 작동시킬 수 있습니다. 따라서 php5-fastcgi 패키지를 설치합니다(또한 Cherokee에 필요한 rrdtool 및 rrdtool-devel 패키지도 설치합니다):

yast2 -i php5-fastcgi rrdtool rrdtool-devel

/etc/php5/fastcgi/php.ini를 수정하고 cgi.fix_pathinfo=1 줄의 주석을 제거해야 합니다:

vi /etc/php5/fastcgi/php.ini

| [...] ; cgi.fix_pathinfo는 CGI에 대한 *실제* PATH_INFO/PATH_TRANSLATED 지원을 제공합니다. PHP의 ; 이전 동작은 PATH_TRANSLATED를 SCRIPT_FILENAME으로 설정하고 PATH_INFO가 무엇인지 이해하지 못했습니다. ; PATH_INFO에 대한 자세한 내용은 cgi 사양을 참조하십시오. 1로 설정하면 PHP CGI가 ; 경로를 사양에 맞게 수정합니다. 0으로 설정하면 PHP가 이전과 같이 동작합니다. 기본값은 1입니다. ; 스크립트를 수정하여 PATH_TRANSLATED 대신 SCRIPT_FILENAME을 사용해야 합니다. ; http://php.net/cgi.fix-pathinfo cgi.fix_pathinfo=1 [...] |

4 Cherokee 설치하기

안타깝게도 OpenSUSE 11.3에 대한 Cherokee 패키지가 없습니다( OpenSUSE 11.1에 대한 패키지는 있지만 11.3에서는 작동하지 않습니다). 따라서 소스에서 Cherokee를 빌드해야 합니다:

cd /usr/src  
wget http://www.cherokee-project.com/download/1.0/1.0.15/cherokee-1.0.15.tar.gz  
tar xvfz cherokee-1.0.15.tar.gz  
cd cherokee-1.0.15/  
./configure --localstatedir=/var --prefix=/usr --sysconfdir=/etc --with-wwwroot=/srv/www/htdocs --with-wwwuser=wwwrun --with-wwwgroup=www --with-mysql --with-php=/usr/bin/php-cgi
make  
make install

64비트 시스템인 경우, 다음 작업도 수행합니다( Cherokee는 64비트 시스템에서 /usr/lib/ 대신 /usr/lib64/에서 라이브러리를 찾기를 기대합니다):

cp /usr/lib/libcherokee-* /usr/lib64/

이제 Cherokee에 대한 init 스크립트가 필요합니다. 직접 작성하는 대신 OpenSUSE 11.1용 Cherokee의 src.rpm 파일을 다운로드하고 src.rpm 패키지에서 init 스크립트를 사용할 수 있습니다:

cd /usr/src  
wget http://download.opensuse.org/repositories/server:/http/openSUSE_11.1/src/cherokee-0.98.1-4.1.src.rpm  
rpm -ivh cherokee-0.98.1-4.1.src.rpm
cd packages/SOURCES/  
cp cherokee.init /etc/init.d/cherokee

그런 다음 init 스크립트를 실행 가능하게 만들고 시스템 시작 링크를 추가합니다:

chmod 755 /etc/init.d/cherokee  
chkconfig --add cherokee

다음으로 Cherokee를 시작합니다:

/etc/init.d/cherokee start

(출력은 다음과 같습니다 - Cherokee는 CTRL+C를 누를 때까지 명령줄로 돌아오지 않습니다. 이렇게 하면 Cherokee가 백그라운드에서 계속 실행됩니다. 이것이 우리가 원하는 것입니다:

server1:~ # Cherokee Web Server 1.0.15 (Jan 10 2011): Listening on port ALL:80, TLS  
disabled, IPv6 enabled, using epoll, 4096 fds system limit, max. 2041  
connections, 5 threads, 408 connections per thread, standard scheduling  
policy

)

이제 브라우저를 http://192.168.0.100으로 이동하면 Cherokee 자리 표시자 페이지가 표시되어야 합니다:

Cherokee는 다음과 같이 시작할 수 있는 웹 기반 제어판을 통해 구성할 수 있습니다:

cherokee-admin -b

(기본적으로 cherokee-admin은 127.0.0.1(로컬호스트)에서만 바인딩되므로 동일한 시스템에서만 연결할 수 있습니다. -b 매개변수를 사용하면 수신할 네트워크 주소를 지정할 수 있습니다. IP가 제공되지 않으면 모든 인터페이스에 바인딩됩니다.)

출력은 다음과 유사해야 합니다:

server1:~ # cherokee-admin -b  
Cherokee Web Server 1.0.15 (Jan 10 2011): Listening on port ALL:9090, TLS  
disabled, IPv6 enabled, using epoll, 4096 fds system limit, max. 2041  
connections, caching I/O, 5 threads, 408 connections per thread, standard  
scheduling policy  
  
로그인:  
  사용자:              admin  
  일회성 비밀번호: Vk2yR8alQft73zzn  
  
웹 인터페이스:  
  URL:               http://localhost:9090/

웹 인터페이스에 로그인하려면 사용자 이름과 비밀번호가 필요하며, 이는 http://192.168.0.100:9090/에서 찾을 수 있습니다:

웹 인터페이스는 다음과 같습니다:

cherokee-admin을 중지하려면 셸에서 CTRL+C를 입력하세요.

Share: X/Twitter LinkedIn

새 게시물을 받은 편지함에서 받기

스팸은 없습니다. 언제든지 구독 해지 가능합니다.