서버 설치 · 2 min read · Jan 02, 2026
Debian Etch에서 memcached 및 PHP5 memcache 모듈 설치하기 (Apache2)
Debian Etch에서 memcached 및 PHP5 memcache 모듈 설치하기 (Apache2)
버전 1.0
저자: Falko Timme
이 가이드는 Debian Etch 시스템에서 Apache2와 함께 memcached 및 PHP5 memcache 모듈을 설치하는 방법을 설명합니다. memcached는 시스템의 메모리에 객체(예: 데이터베이스 쿼리 결과)를 저장할 수 있는 데몬으로, 웹 사이트의 속도를 크게 향상시킬 수 있습니다. 네트워크를 통해 memcached를 사용할 수 있지만(즉, 웹 애플리케이션을 한 서버에 설치하고 memcached를 다른 서버에 설치), 일반적으로 네트워킹 오버헤드를 피하기 위해 두 가지를 모두 한 서버에 설치합니다.
memcached는 웹 애플리케이션의 속도를 높이기 위한 즉각적인 솔루션이 아니라는 점에 유의해야 합니다. 일반적으로 memcached와 함께 작동하도록 스크립트(PHP, Perl 등)를 조정해야 하므로 약간의 작업이 필요합니다.
이 문서는 어떤 종류의 보증 없이 제공됩니다! 이것이 귀하에게 작동할 것이라는 보증을 하지 않습니다!
1 사전 참고
저는 Apache2와 PHP5가 이미 설치되어 작동 중인 IP 주소 192.168.0.100의 Debian Etch 서버에서 이 테스트를 수행했습니다. 이 튜토리얼에서는 시연 목적으로 Apache의 기본 문서 루트인 /var/www를 사용할 것입니다. 물론 다른 vhost를 사용할 수도 있지만, 이 튜토리얼에서 사용하는 info.php 파일의 경로를 조정해야 할 수도 있습니다.
2 PHP5의 현재 상태 확인하기
먼저 memcached를 설치하기 전에 PHP5 설치에 대해 알아보겠습니다. 이를 위해 문서 루트 /var/www에 info.php 파일을 생성합니다:
vi /var/www/info.php| |
그 후, 브라우저에서 해당 파일을 호출합니다: http://192.168.0.100/info.php
보시다시피, PHP 5.2.0이 설치되어 있습니다…

… 하지만 PHP5 memcache 모듈은 페이지 어디에도 언급되어 있지 않습니다:

3 memcached 및 PHP5 memcache 모듈 설치하기
memcached와 PHP5 memcache 모듈은 Debian Etch용 패키지로 제공되므로 다음과 같이 설치할 수 있습니다:
apt-get install memcached php5-memcache설치 후, memcached는 이미 실행 중이어야 합니다. 다음을 입력하여 확인할 수 있습니다:
netstat -tap | grep memcachedserver1:~# netstat -tap | grep memcached
tcp 0 0 :11211 :* LISTEN 3053/memcached
server1:~#
보시다시피, memcached는 포트 11211(기본 memcached 포트)에서 실행 중이며, 시스템의 모든 인터페이스에서 수신 대기하고 있습니다. memcached는 속도를 포기하지 않기 위해 내장된 인증 메커니즘이 없으므로, 이는 외부에서 누구나 연결하여 사용할 수 있음을 의미합니다. 이를 피하려면 방화벽에서 포트 11211을 닫거나 memcached가 localhost에서만 수신 대기하도록 구성할 수 있습니다. 여기서는 후자의 방법을 사용하겠습니다.
이를 위해 /etc/memcached.conf에 저장된 memcached 구성을 엽니다:
vi /etc/memcached.conf구성에 -l 127.0.0.1을 추가합니다(원하는 경우 다른 설정도 조정할 수 있습니다 - 파일에는 각 설정에 대한 설명이 포함되어 있습니다):
| [...] # 어떤 IP 주소에서 수신 대기할지 지정합니다. 기본값은 모든 IP 주소에서 수신 대기하는 것입니다. # 이 매개변수는 memcached가 가진 유일한 보안 조치 중 하나이므로, # 방화벽이 설정된 인터페이스에서 수신 대기하고 있는지 확인하십시오. # -l 12.34.56.78 -l 127.0.0.1 [...] |
memcached를 다시 시작합니다…
/etc/init.d/memcached restart… 그리고 다시
netstat -tap | grep memcached을 실행합니다. 보시다시피, memcached는 이제 localhost에서만 수신 대기하고 있습니다:
server1:~# netstat -tap | grep memcached
tcp 0 0 localhost.localdo:11211 : LISTEN 3092/memcached
server1:~#
그 후, 새로운 PHP 구성이 적용되도록 Apache를 다시 시작합니다:
/etc/init.d/apache2 restart그 후, 브라우저에서 info.php를 다시 엽니다: http://192.168.0.100/info.php
이제 페이지에서 memcache가 언급되는 것을 볼 수 있어야 하며, 이는 성공적으로 통합되어 예상대로 작동하고 있음을 의미합니다:

PHP 애플리케이션에서 PHP memcache 모듈을 사용하려면 memcache 예제 및 memcache 함수 참조를 확인해야 합니다.
저는 http://dk.php.net/manual/en/memcache.examples.php의 예제 스크립트를 사용하고 이를 /var/www/memcachetest.php 파일에 저장합니다:
vi /var/www/memcachetest.php| connect('localhost', 11211) or die ("Could not connect"); $version = $memcache->getVersion(); echo "서버의 버전: ".$version." |
"; $tmp_object = new stdClass; $tmp_object->str_attr = 'test'; $tmp_object->int_attr = 123; $memcache->set('key', $tmp_object, false, 10) or die ("서버에 데이터를 저장하지 못했습니다"); echo "캐시에 데이터 저장 (데이터는 10초 후 만료됩니다)
"; $get_result = $memcache->get('key'); echo "캐시에서 데이터:
"; var_dump($get_result); ?>
그런 다음 브라우저에서 해당 파일을 호출합니다 (http://192.168.0.100/memcachetest.php). 모든 것이 잘 진행되면 출력은 다음과 같아야 합니다:

4 링크
- memcached: http://www.danga.com/memcached
- PHP: http://www.php.net
- Apache: http://httpd.apache.org
- Debian: http://www.debian.org
새 게시물을 받은 편지함에서 받기
스팸은 없습니다. 언제든지 구독 해지 가능합니다.