📑 목차
사이트 관리 개요 site-registry.json 구조 CRUD API (api/sites.php) 운영·개발 환경 구분 부모-자식 관계

🌐 사이트 관리

/vermanager/sites 페이지에서 모든 사이트를 등록·수정·삭제할 수 있습니다. 사이트 등록부(site-registry.json)를 통해 중앙 관리됩니다.

site-registry.json 구조

{
  "version": "1.0.0",
  "last_updated": "2026-05-03T00:00:00+09:00",
  "sites": {
    "kiam-prod": {
      "id": "kiam-prod",
      "name": "KIAM 운영환경",
      "domain": "kiam.kr",
      "aliases": ["www.kiam.kr", "api.kiam.kr"],
      "server_hostname": "main-server",
      "server_ip": "127.0.0.1",
      "server_port": 22,
      "document_root": "/home/kiam",
      "application": "Onlyone OneChat",
      "platform": "PHP",
      "environment": "production",
      "status": "active",
      "created_at": "2026-05-02T10:00:00+09:00",
      "updated_at": "2026-05-02T10:48:25+09:00"
    },
    "kiam-dev": {
      "id": "kiam-dev",
      "name": "KIAM 개발환경",
      "domain": "dev.kiam.kr",
      "server_hostname": "main-server",
      "environment": "development",
      "parent_site_id": "kiam-prod",
      "status": "active"
    }
  }
}

CRUD API (api/sites.php)

HTTP 메서드엔드포인트기능
GET/api/sites전체 사이트 목록 조회
GET/api/sites?id=kiam-prod특정 사이트 상세 조회
POST/api/sites신규 사이트 등록 (JSON body)
PUT/api/sites?id=kiam-prod사이트 정보 수정
DELETE/api/sites?id=kiam-prod사이트 비활성화 (status=inactive)

운영·개발 환경 구분

environment 필드로 구분: production development

시스템 통계에서 운영/개발 사이트 수를 자동 집계합니다. get_system_stats() 함수가 이 구분을 사용합니다.

부모-자식 관계

parent_site_id 필드로 운영↔개발 관계를 추적합니다. 예: kiam-dev의 parent_site_id = "kiam-prod". 원격 동기화 시 이 관계를 기반으로 운영→개발 복제가 이루어집니다.