주의!
맥 OS X 10.6 Snow Leopard에서도 아래와 비슷한 방법으로 Apache, PHP, MySQL을 설치할 수 있다. 그러나 2009년 9월 현재 Entropy PHP는 Snow Leopard에서 동작 이상을 보이고 있고, MySQL의 패키지는 10.5까지만 제공되고 있다 (x86_64용 패키지를 사용하면 문제없이 동작한다는 보고도 있다). 새로운 시스템의 맞춰서 새롭게 설치하는 사용자의 경우에는 MacPorts를 이용한 방법을 추천한다. 또한 Snow Leopard에 내장된 PHP의 버전은 5.3이며, 이 버전은 Drupal 6.x와 호환성에 문제가 있다.
맥 OS를 웹서버로 활용하기 위해서는 Apache, PHP, MySQL 등이 필요하다. 맥 OS X에는 기본적으로 Apache와 PHP가 설치되어 있다. 그러나 원활한 설치 및 유지, 관리를 위해 MAMP, XAMPP 등의 어플리케이션을 통해 간단히 설치가 가능하다. 이 어플리케이션들은 맥 OS에 내장된 Apache와 PHP를 건드리지 않으며 제거도 손쉽게 할 수 있다. MAMP의 설치는 미디어위키 인스톨을 참고한다. 아래의 내용은 Mac OS X Version 10.5.8 Leopard에서 테스트되었다.
Apache
Apache는 시스템 환경설정 (System Preferences) 에서 시작할 수 있다. System Preferences > Sharing으로 이동하면 왼쪽에 아래와 같은 패널을 볼 수 있다.
위 가운데 Web Sharing을 체크하면 곧바로 Apache가 기동된다. 또는, 터미널 상에서
sudo apachectl start
명령을 내린다. Apache를 다시 기동할 경우, 위 시스템 환경설정에서 체크를 풀었다가 다시 체크를 하거나, 터미널에서
sudo apachectl restart
명령을 내린다. 이후부터는 /etc/apache2/httpd.conf, /etc/hosts와 /etc/apache2/users 폴더 안의 파일들을 통해 웹서버를 설정할 수 있다. 설정을 추가, 수정할 경우 Apache를 재기동해야 된다.
PHP
PHP 역시 맥 OS에 내장되어 있지만 기본적으로 비활성화되어 있다. 활성화시키기 위해서는 터미널에서
sudo vi /etc/apache2/httpd.conf
또는
sudo open -a textedit /etc/apache2/httpd.conf
로 설정파일을 열고 아래와 같은 라인을 찾는다.1
#LoadModule php5_module libexec/apache2/libphp5.so
위 라인을 아래와 같이 수정한다.
LoadModule php5_module libexec/apache2/libphp5.so
이후, Apache를 다시 시작한다. PHP 변수 설정은 /etc/php.ini다.
sudo apachectl restart
동작을 확인하기 위해, 텍스트 에디터를 열어서
<?php phpinfo(); ?>
위와 같이 작성하고, info.php로 저장한 후, 이 파일을 /Library/WebServer/Documents 폴더로 옮긴다. 웹브라우저를 열고 http://localhost/info.php로 접속하면 현재 자신의 시스템에 설치된 PHP의 정보가 표시되는 것을 확인한다. Apache의 기동여부는 http://localhost 또는 http://localhost/manual/ 페이지에 접속하여 확인할 수 있다.
PHP Apache Module (Entropy PHP)
맥 OS에 내장된 PHP는 기본적인 기능은 갖추고 있지만, GD library나 mcrypt 등의 확장 기능 (extension) 들을 쓸 수 없다.2 이 확장 기능들을 쓰기 위해서는 직접 소스로부터 컴파일을 다시 해야되는 번거로움이 있다. Marc Liyanage의 홈페이지로부터 pkg 파일을 다운로드하여 PHP를 설치할 것을 권장한다. 다운로드 및 설치 방법은 아래의 링크로 가서 확인할 수 있다.
Entropy PHP를 설치하기 전에 이미 맥 OS에 내장된 PHP를 실행하였다면 /etc/apache2/httpd.conf 파일에서 LoadModule php5_module libexec/apache2/libphp5.so 라인을 찾아 다시 주석 처리한 후 (맨 앞에 '#'을 추가), Apache를 재기동한다. 이전에 Entropy PHP를 설치한 적이 있다면 /usr/local/php5 폴더와 /etc/apache2/other/+entropy-php.conf 파일을 다른 곳으로 이동한다. 설치 후, 다시 Apache를 재시동한다. Entropy PHP를 이용할 경우, PHP 변수 설정은 /usr/local/php5/lib/php.ini를 수정한다.
MySQL
MySQL은 맥 OS에 내장되어 있지 않다. 그러나 MySQL의 홈페이지로부터 맥 OS X용 패키지를 다운로드하여 손쉽게 설치할 수 있다.
위 링크에서 MySQL Community Server를 선택하여 아래를 보면 맥 OS용 패키지를 찾을 수 있다. MySQL뿐만 아니라 StartupItem까지 설치하면 이후 System Preferences 패널에서 MySQL 재시작, 정지를 간편하게 할 수 있다.
설치 후, 다음과 같이 링크를 만든다.
sudo mkdir /var/mysql sudo ln -s /tmp/mysql/mysql.sock /var/mysql
보안을 위해 MySQL root 패스워드를 생성한다. 터미널에서 sudo -i 명령을 통해 슈퍼유저로 바꾼 후,
#/usr/local/mysql/bin/mysqladmin -u root password 'new-password'
위에서 new-password에 자신이 원하는 패스워드를 쓴다. 이후부터,
#/usr/local/mysql/bin/mysql -u root -p
명령을 통해 로그인할 수 있다. 처음 설치했다면 다음과 같은 명령을 내려 test 데이터베이스와 anonymous 계정을 삭제한다.
#/usr/local/mysql/bin/mysql -u root -p mysql> DROP DATABASE test; mysql> DELETE FROM mysql.user WHERE user = ''; mysql> FLUSH PRIVILEGES; mysql> quit;
phpMyAdmin
MySQL 데이터베이스를 관리하기 위해 phpMyAdmin 등의 툴을 이용할 수도 있다.
위 링크로부터 phpMyAdmin을 다운로드한다. 다운로드한 압축파일을 Sites 폴더에 푼다. 폴더명을 원하는 이름으로 바꾼 후 (아래에서는 phpmyadmin으로 가정한다), 폴더 내부에서 config.sample.inc.php를 config.inc.php로 복사한 후, 아래의 라인을 남기고 주석 처리한다.
$cfg['blowfish_secret'] = ''; $i = 0; $i++; $cfg['Servers'][$i]['auth_type'] = 'cookie'; $cfg['Servers'][$i]['host'] = 'localhost'; $cfg['Servers'][$i]['connect_type'] = 'tcp'; $cfg['Servers'][$i]['compress'] = false; $cfg['Servers'][$i]['extension'] = 'mysql'; $cfg['Servers'][$i]['bs_garbage_threshold'] = 50; $cfg['Servers'][$i]['bs_repository_threshold'] = '32M'; $cfg['Servers'][$i]['bs_temp_blob_timeout'] = 600; $cfg['Servers'][$i]['bs_temp_log_threshold'] = '32M'; $cfg['UploadDir'] = ''; $cfg['SaveDir'] = '';
위에서 $cfg['blowfish_secret'] =의 오른쪽 작은 따옴표 사이에 아무 문자나 숫자를 대입해 넣는다. 위 설정 외에 아래와 같은 설정을 추가해 두는 것도 유용하다.
$cfg['PmaAbsoluteUri'] = 'http://localhost/~username/phpmyadmin/'; $cfg['PmaNoRelation_DisableWarning'] = true; $cfg['McryptDisableWarning'] = false;
위에서 username에는 자신의 계정 이름을 적는다. 기본 설정은 libraries 폴더 내부에 config.default.php다. 이 파일은 되도록 수정하지 않도록 한다. 이후부터는 http://localhost/~username/phpmyadmin/로 접속할 수 있다.


2 comments
블로그의 내용대로 Entropy PHP 설치 하고 다 세팅을 했습니다.
httpd.conf에서 주석처리 도 했구요..
주석처리를 함으로서 기본의 php 모듀를 사용하지 않고 새로 설치한 php 모듈을 사용한다는건 알겠는데,
저렇게 설정을 끝 내고 난 뒤엔 아파치도 작동안하고 웹서버가 작동안하니 php 파일도 실행이 안되네요.
추가로 또 설정해줘야 하는 부분이 있나요????
안녕하세요.
현재 사용하고 계시는 OS가 Leopard인 지 아니면 Snow Leopard인 지 모르겠네요. 여기에 작성한 글은 사실, 제가 Leopard를 사용하고 있던 시절에 쓴 것입니다. Snow Leopard에서는 간단히 동작하는 지만 확인한 터라 섣불리 자신할 수가 없네요.
아파치가 작동하지 않는다고 하셨는데, 추측하기로는 http.conf 수정 후에 문법에 맞지 않는 부분이 있어서 그럴지도 모르겠네요. 확인을 위해서는 터미널 상에서
명령을 내려보세요. 그러면 httpd.conf를 읽어서 문제가 있을 경우, 몇번째 줄에서 문제가 발생했는 지 기록이 뜰 것입니다. 또는 다른 종류의 에러 메세지가 뜰 지도 모르겠는데, 그 에러 메세지를 댓글로 남겨주시기 바랍니다.
만약 Snow Leopard를 사용하고 계신다면, MacPorts를 이용할 것을 추천합니다.
Post new comment