import React, { useState, useEffect } from 'react'; import { X, HelpCircle, Server, Folder, FileText, Settings, Wifi, Terminal } from 'lucide-react'; interface HelpModalProps { isOpen: boolean; onClose: () => void; initialTab?: 'sites' | 'connection' | 'files' | 'backend'; } const HelpModal: React.FC = ({ isOpen, onClose, initialTab }) => { const [activeTab, setActiveTab] = useState<'sites' | 'connection' | 'files' | 'backend'>('sites'); useEffect(() => { if (isOpen && initialTab) { setActiveTab(initialTab); } }, [isOpen, initialTab]); // ESC key handler useEffect(() => { const handleKeyDown = (e: KeyboardEvent) => { if (isOpen && (e.key === 'Escape' || e.key === 'Esc')) { onClose(); } }; if (isOpen) { window.addEventListener('keydown', handleKeyDown); } return () => { window.removeEventListener('keydown', handleKeyDown); }; }, [isOpen, onClose]); if (!isOpen) return null; return (
{/* Header */}

도움말 및 사용 가이드

{/* Sidebar */}
{/* Content */}
{activeTab === 'sites' && (

사이트 관리자

자주 방문하는 FTP 서버 정보를 저장하고 관리할 수 있습니다.

  • 새 사이트: 새로운 접속 정보를 추가합니다.
  • 시작 디렉토리: 접속 성공 시 자동으로 이동할 경로를 지정할 수 있습니다. (예: /public_html)
  • 자동 저장: '연결' 버튼을 누르면 변경된 정보가 자동으로 저장됩니다. (백엔드 재시작 필요)
)} {activeTab === 'connection' && (

퀵 접속 및 설정

상단 입력창을 통해 빠르게 접속하거나 설정을 변경할 수 있습니다.

  • 자동 완성: 마지막으로 입력한 호스트, 사용자, 포트 정보가 자동으로 채워집니다.
  • 접속 상태: 연결 버튼의 색상(초록/파랑)으로 현재 상태를 확인할 수 있습니다.
  • 백엔드 설정: 우측 상단 톱니바퀴 아이콘을 통해 백엔드 코드를 확인하거나 다운로드할 수 있습니다.
)} {activeTab === 'backend' && (

백엔드 설치 및 실행

WebZilla는 보안상의 이유로 로컬 파일 시스템에 접근하기 위해 별도의 백엔드 프로그램이 필요합니다.

1. 백엔드 코드 다운로드

메인 화면 상단의 백엔드 버튼을 눌러 backend_proxy.cjs 파일을 다운로드하세요.

2. 실행 방법

방법 A: Node.js가 설치된 경우 (추천)
node backend_proxy.cjs
방법 B: 실행 파일(.exe) 사용

배포된 exe 파일을 더블 클릭하여 실행하세요.

서버가 실행되면 포트 8090에서 대기하며, 이 창의 우측 상단 'Server' 상태가 Connected로 변경됩니다.

)} {activeTab === 'files' && (

파일 및 폴더 관리

로컬(내 컴퓨터)과 리모트(서버) 간의 파일 전송 및 관리를 수행합니다.

파일 전송

파일을 더블 클릭하거나 드래그하여 업로드/다운로드 할 수 있습니다. (드래그 앤 드롭 준비 중)

로컬 (내 컴퓨터)

  • • 새 폴더 만들기
  • • 이름 변경
  • • 파일/폴더 삭제

리모트 (서버)

  • • 새 폴더 만들기 (MKD)
  • • 이름 변경 (RENAME)
  • • 파일/폴더 삭제 (DELE)
)}
{/* Footer */}
); }; export default HelpModal;