01시작하기 전에
이 가이드는 개발 경험이 많지 않은 분을 위해 작성됐어요. 명령어의 의미를 몰라도 괜찮으니, 안내된 순서대로 따라해 주세요.
진행할 작업은 두 가지예요. 컴퓨터에 PHP를 설치하고, 결제 서버를 실행해요. 이 문서는 백엔드 서버를 띄우는 가이드이며, 결제 테스트 화면(프론트엔드)은 다루지 않아요.
미리 알아둘 용어
| 용어 | 쉽게 말하면 |
|---|---|
| 터미널 | 명령어를 입력하는 창이에요. Windows는 PowerShell, Mac은 터미널 앱이에요. |
| PHP | 이 백엔드를 실행하는 프로그래밍 언어예요. 컴퓨터에 한 번만 설치하면 돼요. |
| PHP 내장 서버 | PHP에 기본으로 포함된 간단한 웹 서버예요. 별도 Apache·Nginx 설치 없이 바로 사용할 수 있어요. |
| router.php | PHP 내장 서버가 요청을 어디로 보낼지 판단하는 진입점 파일이에요. public/router.php에 있어요. |
| localhost | "내 컴퓨터"를 가리켜요. localhost:8080은 내 컴퓨터의 8080번 포트에 접속한다는 의미예요. |
PHP는 Windows · macOS · Linux 어디서나 동작해요. 설치 방법만 OS마다 조금 다르며, 그 차이는 02단계에서 표시해 두었어요. 실행 명령은 OS에 관계없이 동일해요.
02PHP 설치
PHP 8.x를 컴퓨터에 설치해요. 이미 설치되어 있다면 이 단계는 건너뛰어도 돼요.
1. Windows — 공식 zip 받아 설치하기
-
다운로드브라우저에서 windows.php.net/download에 접속한 뒤, VS17 x64 Non Thread Safe 항목의 Zip을 클릭해 다운로드해 주세요. (버전은 8.x 이상이면 돼요.)
-
압축 해제 후 폴더 이동받은 zip 파일을 압축 해제해요. 생성된 폴더(예: php-8.3.x-Win32-...)를 C:\php로 옮기거나 이름을 C:\php로 변경해 주세요.
-
PATH 등록시작 버튼에서 "환경 변수"를 검색해 "시스템 환경 변수 편집"을 클릭한 뒤, "환경 변수" 버튼을 누르고 위쪽 사용자 변수의 Path를 선택하세요. 이어서 "편집" → "새로 만들기" → C:\php 입력 → 확인을 눌러 주세요. PowerShell을 새로 열어야 적용돼요.
-
설치 확인PowerShell을 열고 아래 명령을 입력해 주세요. 버전 숫자(예: PHP 8.3.x)가 표시되면 완료예요.
php --version
2. macOS — Homebrew로 설치하기
-
Homebrew가 없다면 먼저 설치터미널을 열고 아래 명령을 입력해 주세요. 이미 설치되어 있다면 건너뛰셔도 돼요.
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" -
PHP 설치
brew install php -
설치 확인버전 숫자가 표시되면 완료예요.
php --version
3. Linux (Ubuntu / Debian 계열)
-
패키지 설치
sudo apt update && sudo apt install -y php php-curl php-mbstring php-openssl -
설치 확인
php --version
curl·mbstring·openssl 확장은 Windows zip 배포판과 macOS Homebrew 설치 시 기본으로 포함되어 있어요. Windows에서 php.ini 설정이 필요한 경우는 05단계 자주 발생하는 문제를 참고해 주세요.
03서버 실행
이제 서버를 실행해요. 아래 순서를 그대로 따라해 주세요. 명령은 한 줄씩 복사해 터미널에 붙여넣고 Enter를 누르시면 돼요.
-
터미널 열기Windows는 PowerShell, Mac은 터미널 앱을 열어 주세요.
-
프로젝트 폴더로 이동프로젝트를 저장한 폴더 안의 php 폴더로 이동해요. 아래의 <프로젝트 폴더> 부분을 본인이 저장한 실제 경로로 바꿔 주세요.경로 입력이 익숙하지 않다면, 터미널에 cd (cd 뒤에 공백 한 칸)를 입력한 뒤 php 폴더를 터미널 창으로 드래그해 주세요. 경로가 자동으로 채워져요. Windows는 폴더에서 Shift + 우클릭 → "경로로 복사" 후 붙여넣기 하시면 돼요.
cd "<프로젝트 폴더>/php" -
PHP 내장 서버 실행아래 한 줄로 서버가 실행돼요. Windows · macOS · Linux 모두 동일한 명령이에요.터미널에 PHP ... Development Server (http://localhost:8080) started 같은 메시지가 표시되면 완료예요.
php -S localhost:8080 -t public public/router.php -
서버 실행 확인터미널에 PHP ... Development Server (http://localhost:8080) started 같은 메시지가 표시되면 서버가 실행된 거예요. 더 확실한 확인 방법은 다음 04를 참고해 주세요.
3번 명령을 실행한 터미널 창은 닫지 말아 주세요. 해당 창이 켜져 있는 동안 서버가 동작하며, 창을 닫으면 서버도 함께 종료돼요.
04실행 확인
이 문서는 서버(백엔드) 실행을 위한 가이드예요. 화면(프론트엔드)이 아닌 서버의 정상 실행 여부를 응답으로 확인해요.
확인 방법
방법 1 · 터미널 메시지: 서버를 실행한 터미널에서 PHP ... Development Server (http://localhost:8080) started 같은 줄이 보이면 서버가 실행된 거예요.
방법 2 · 응답 확인: 브라우저 주소창에 http://localhost:8080/config를 입력하거나, 새 터미널에서 아래 명령을 실행해 주세요. {"site_cd":"T0000"}와 같은 응답이 표시되면 서버와 라우팅이 정상 동작하는 거예요.
curl http://localhost:8080/config
AI 도구로 이 가이드를 따라 실행한 경우, "서버가 정상적으로 실행됐는지 확인해 주세요"라고 요청하시면 실행 로그와 /config 응답을 함께 확인해 줘요.
05자주 발생하는 문제
실행 중 자주 만나게 되는 문제와 해결 방법이에요. 대부분 PHP의 PATH 문제이거나, 포트가 이미 사용 중이어서 발생해요.
증상별 해결법
| 증상 | 해결법 |
|---|---|
| 'php' is not recognized / command not found | PHP가 설치되지 않았거나 PATH에 등록되어 있지 않아요. Windows는 02단계의 PATH 등록을 다시 확인하고 PowerShell을 새로 열어 시도해 주세요. Mac은 brew install php를 실행해 주세요. |
| 포트 8080이 이미 사용 중 (Address already in use) | 다른 프로그램이 8080번 포트를 사용 중이에요. 명령의 8080을 8081이나 다른 번호로 바꿔 실행해 주세요. 브라우저 접속 주소도 같은 번호로 바꾸시면 돼요. |
| Call to undefined function curl_init() / mb_detect_encoding() | curl 또는 mbstring 확장이 비활성화된 상태예요. Windows에서는 C:\php\php.ini 파일을 메모장으로 열고, ;extension=curl과 ;extension=mbstring 줄 앞의 ;(세미콜론)을 지운 뒤 저장하고 서버를 다시 실행해 주세요. |
| 서버는 실행됐는데 응답이 없음 | 터미널에 started 메시지가 표시됐는지 확인하고, curl http://localhost:8080/config로 응답을 확인해 주세요. 주소는 https://가 아닌 http://예요. |
| router.php: No such file or directory | 현재 위치가 php 폴더 안인지 확인해 주세요. 터미널에 ls(Mac/Linux) 또는 dir(Windows)를 입력했을 때 public 폴더가 보여야 해요. |
원인을 알기 어려울 때는 터미널의 에러 메시지를 그대로 복사해 검색하거나 AI 도구에 문의해 주세요. 메시지 안에 원인이 대부분 포함되어 있어요.
06서버 종료
테스트가 끝나면 다음 방법으로 서버를 종료해 주세요.
서버가 동작 중인 터미널 창에서 Ctrl + C를 눌러 주세요. Mac도 동일해요. 서버가 종료되며, 터미널이 다시 명령을 입력할 수 있는 상태로 돌아와요.
다시 실행하고 싶으면 03단계의 폴더 이동 후 php -S localhost:8080 -t public public/router.php 한 줄만 입력하시면 돼요. 두 번째부터는 바로 이 명령만 사용하시면 돼요.