ServBay 로컬 환경에서 PHP를 효율적으로 사용하기
PHP(Hypertext Preprocessor)는 오픈 소스 스크립트 언어로, 특히 웹 개발에 널리 사용되며 HTML에 직접 삽입할 수 있습니다. C, Java, Perl의 장점을 흡수한 유연한 문법 덕분에 배우고 사용하기 쉬우며, 다양한 데이터베이스 시스템 및 서비스와 손쉽게 연동됩니다.
ServBay는 강력한 로컬 웹 개발 환경으로, macOS 개발자에게 PHP 및 연관 컴포넌트의 설치, 구성, 관리를 간편하게 제공하여 로컬에서 PHP 애플리케이션을 효율적으로 개발·테스트할 수 있게 해줍니다.
ServBay의 PHP 지원
ServBay는 다양한 PHP 버전을 지원합니다. 과거 호환 버전부터 최신 안정 버전까지 제공되어, 프로젝트 요구에 따라 가장 적합한 PHP 환경을 선택·개발·배포할 수 있습니다. 다음은 ServBay에서 지원하는 PHP 버전입니다:
- PHP 5.6
- PHP 7.0
- PHP 7.1
- PHP 7.2
- PHP 7.3
- PHP 7.4
- PHP 8.0
- PHP 8.1
- PHP 8.2
- PHP 8.3
- PHP 8.4
TIP
ServBay는 이미 Composer를 내장하고 있으니 별도 설치가 필요하지 않습니다.
설치 방법
ServBay의 GUI 패널을 통해 PHP 패키지를 손쉽게 설치 및 관리할 수 있습니다. 아래는 ServBay GUI 패널에서 PHP를 설치하는 단계입니다:
- ServBay GUI 패널을 실행합니다.
- 좌측 사이드바에서
패키지
-PHP
를 클릭합니다. - 목록에서 원하는 PHP 버전을 찾습니다.
- 해당 버전 옆의 초록색
설치
버튼을 클릭하고, 완료될 때까지 기다립니다.
PHP 버전 관리 및 전환
ServBay의 큰 강점은 여러 PHP 버전 간의 빠른 전환입니다. 여러 PHP 버전을 설치했다면, ServBay GUI 패널의 패키지
- PHP
섹션에서 원하는 버전 우측의 버튼을 클릭해 해당 버전을 현재 활성화 버전으로 지정할 수 있습니다.
활성화된 버전으로 설정하면 그 즉시 해당 PHP 버전이 여러분의 웹 애플리케이션 실행에 사용됩니다.
기본 제공 모듈
ServBay는 PHP의 확장 기능 구현을 위해 다양한 필수 모듈을 제공합니다. 다수의 코어 모듈이 기본 설치 및 활성화되어 있어 별도의 설정 없이 바로 쓸 수 있습니다. 필요에 따라 추가 모듈을 개별적으로 활성화할 수도 있습니다.
ServBay에서 제공하는 주요 PHP 모듈은 다음과 같습니다:
- GD: 이미지 생성, 편집, 다양한 이미지 포맷 출력 등 이미지 처리를 위한 라이브러리입니다. 기본 설치 및 활성화되어 별도 설정이 필요 없습니다.
- IMAP: 이메일 처리용 라이브러리로, IMAP, POP3, NNTP 프로토콜을 지원합니다. 기본 설치 및 활성화.
- Imagick: ImageMagick 기반 고급 이미지 처리 확장입니다. 기본 설치 및 활성화.
- Memcache: 메모리 객체 캐싱 시스템 Memcache의 클라이언트 라이브러리입니다. 기본 설치 및 활성화.
- Memcached: 고성능 분산 메모리 캐시 시스템 Memcached의 클라이언트 라이브러리입니다. 기본 설치 및 활성화.
- MySQL: MySQL 데이터베이스 연동용 PHP 확장(mysqi 혹은 mysqlnd 등). 기본 설치 및 활성화.
- OpenLDAP: LDAP 서버와 연동하기 위한 가볍고 강력한 디렉터리 접근 확장입니다. 기본 설치 및 활성화.
- PgSQL: PostgreSQL 데이터베이스 연동용 PHP 확장입니다. 기본 설치 및 활성화.
- Redis: Redis 키-값 저장소 연동 PHP 확장입니다. 기본 설치 및 활성화.
- SQLite 3: SQLite 데이터베이스 연동용 PHP 확장입니다. 기본 설치 및 활성화.
- Sodium: 현대적인 강력 암호화 기능을 제공하는 리브러리입니다. 기본 설치 및 활성화.
- cURL: HTTP, HTTPS, FTP 등 다양한 프로토콜을 지원하는 네트워크 요청 및 데이터 전송용 라이브러리입니다. 기본 설치 및 활성화.
- MongoDB: MongoDB 데이터베이스 연동 PHP 확장. ServBay에서 MongoDB 모듈 활성화 방법을 참고하세요.
- OPcache: PHP 스크립트 실행을 가속화하는 바이트코드 캐싱 모듈. ServBay에서 OPcache 모듈 활성화 방법을 참고하세요.
- Phalcon: C로 구현된 고성능 PHP 프레임워크 확장. ServBay에서 Phalcon 모듈 활성화 방법을 참고하세요.
- SCWS: 중국어 형태소 분석 확장. ServBay에서 SCWS 모듈 활성화 방법을 참고하세요.
- Swoole: 고성능 PHP 비동기·코루틴·병렬 네트워크 프레임워크 확장. ServBay에서 Swoole 모듈 활성화 방법을 참고하세요.
- Xdebug: PHP 디버깅·코드 분석을 위한 강력한 확장. ServBay에서 Xdebug 모듈 활성화 방법을 참고하세요.
더 상세한 사용법은 아래 링크를 참고하세요:
- GD
- IMAP
- Imagick
- Memcache
- Memcached
- MySQL
- OpenLDAP
- PgSQL
- Redis
- SQLite 3
- Sodium
- cURL
- MongoDB
- OPcache
- Phalcon
- SCWS
- Swoole
- Xdebug
모듈 활성화 여부는 어떻게 확인하나요?
웹사이트 루트 디렉터리에 info.php
파일을 만들고, 내용에 <?php phpinfo(); ?>
코드를 작성해 브라우저로 해당 파일을 열어보세요. 페이지에서 활성화된 PHP 버전과 모든 설치 및 활성화 모듈, 상세 설정 정보를 확인할 수 있습니다.
PHP 설정 (php.ini)
PHP의 동작은 php.ini
파일을 통해 세밀하게 조정할 수 있습니다. 예를 들어 메모리 제한, 에러 출력 레벨, 파일 업로드 최대 크기 등입니다. ServBay는 설치된 PHP 버전별로 해당하는 php.ini
파일을 자동 생성합니다.
현재 활성화된 PHP의 php.ini
위치를 확인하려면 phpinfo()
출력 화면에서 "Loaded Configuration File" 항목을 보면 됩니다.
또한 ServBay GUI 패널을 통해 현재 활성화된 버전의 php.ini
파일을 즉시 열어 편집할 수 있습니다:
- ServBay GUI 패널을 실행합니다.
- 상단 메뉴에서
패키지
-PHP
항목으로 이동합니다. - 현재 활성화(초록색 표시)된 PHP 버전을 찾습니다.
- 해당 버전 오른쪽의 설정(톱니바퀴) 아이콘을 클릭 후 "Edit php.ini"를 선택합니다.
php.ini
변경 후에는 ServBay나 최소한 웹 서버(Caddy 또는 Nginx)를 재시작해야 변경 사항이 적용됩니다.
기본 예제: 첫 번째 PHP 스크립트 실행하기
ServBay에서 PHP 스크립트를 실행하는 것은 매우 간단합니다. 아래의 단계에 따라 "Hello, World" 샘플을 만들어 보세요:
- ServBay에서 최소 하나 이상의 PHP 버전과 웹 서버(Caddy 또는 Nginx)를 설치하고 실행 중인지 확인하세요.
- ServBay의 웹사이트 루트 디렉터리를 엽니다. 일반적으로 추천 위치는
/Applications/ServBay/www
입니다. - 해당 디렉터리 내에 새로운 하위 폴더를 생성합니다. 예시로
php-demo
폴더를 만들면 전체 경로는/Applications/ServBay/www/php-demo
가 됩니다.