커뮤니티 게시판 프로젝트입니다.
- Backend: PHP (PDO)
- Frontend: React + Vite
- Database: MySQL
- UI: Ant Design
git clone <repository-url>
cd htdocsWindows:
install.batLinux/Mac:
chmod +x install.sh
./install.sh설치 스크립트가 다음을 자동으로 수행합니다:
- 데이터베이스 설정 파일 생성 (
db.php.example→db.php) - 업로드 디렉토리 생성
- Frontend 의존성 설치 (
npm install)
주의: 설치 후 backend/config/db.php 파일을 열어서 데이터베이스 정보를 입력해야 합니다!
backend/config/db.php 파일은 Git에 포함되지 않습니다 (보안상의 이유).
클론 후 반드시 설정 파일을 생성하고 데이터베이스 정보를 입력해야 합니다!
MySQL에 접속하여 데이터베이스를 생성하고 스키마를 실행하세요:
mysql -u root -p < db/schema.sql또는 phpMyAdmin을 사용하여 db/schema.sql 파일을 import하세요.
# 설정 예제 파일을 복사
cp backend/config/db.php.example backend/config/db.phpbackend/config/db.php 파일을 열어서 자신의 데이터베이스 정보를 입력하세요:
private string $host = '127.0.0.1'; // 데이터베이스 호스트
private string $db = 'community'; // 데이터베이스 이름
private string $user = 'root'; // 데이터베이스 사용자명
private string $pass = ''; // 데이터베이스 비밀번호업로드 디렉토리가 존재하는지 확인하세요 (.gitkeep 파일이 있으면 자동으로 생성됨):
# 디렉토리가 없으면 생성
mkdir -p backend/uploads/posts업로드 디렉토리에 쓰기 권한이 있는지 확인하세요.
cd frontend
npm install프로덕션 환경이나 다른 서버를 사용하는 경우, frontend/src/api/client.js 파일에서 API URL을 수정하세요:
const BASE_URL = 'http://localhost/backend/api' // 여기를 수정npm run devXAMPP를 사용하는 경우:
- 프로젝트가
htdocs디렉토리에 있는지 확인 - Apache가 실행 중인지 확인
- 브라우저에서
http://localhost/backend/api/boards.php접속하여 API가 동작하는지 확인
PHP 7.4 이상이 필요합니다.
htdocs/
├── backend/ # PHP Backend
│ ├── api/ # API 엔드포인트
│ ├── config/ # 설정 파일
│ └── uploads/ # 업로드된 파일
├── frontend/ # React Frontend
│ └── src/
│ ├── api/ # API 클라이언트
│ ├── components/ # React 컴포넌트
│ └── pages/ # 페이지 컴포넌트
├── db/ # 데이터베이스 스키마
│ ├── schema.sql # 데이터베이스 스키마
│ └── seed.sql # 초기 데이터 (선택사항)
└── README.md # 이 파일
- 사용자 인증 (회원가입, 로그인)
- 게시판 관리
- 게시글 작성/수정/삭제
- 댓글 작성 (대댓글 지원)
- 파일 업로드 (이미지, 첨부파일)
- 좋아요/싫어요 기능
POST /backend/api/auth_signup.php- 회원가입POST /backend/api/auth_login.php- 로그인GET /backend/api/boards.php- 게시판 목록GET /backend/api/posts.php- 게시글 목록POST /backend/api/posts.php- 게시글 작성GET /backend/api/post_detail.php- 게시글 상세GET /backend/api/comments.php- 댓글 목록POST /backend/api/comments.php- 댓글 작성
backend/config/db.php파일이 올바르게 생성되었는지 확인- 데이터베이스 정보가 올바른지 확인
- MySQL 서버가 실행 중인지 확인
backend/uploads/디렉토리에 쓰기 권한이 있는지 확인- PHP
upload_max_filesize설정 확인
frontend/src/api/client.js의BASE_URL이 올바른지 확인- CORS 설정 확인 (필요시)
- Apache/PHP 서버가 실행 중인지 확인
이 프로젝트는 개인 프로젝트입니다.