================================================================== CrazyWWWBoard 98 Professional Edition Powered by Nobreak Technologies, Inc. ================================================================== C O N T E N T S 1. 라 이 센 스 (License Agreement) 2. 소프트웨어 정보 (Software & Contact Information) 3. 제품 구입 및 등록 (Registeration) 4. 설치 방법 (Installation) 5. 사용 방법 (Usage) 6. 질문과 답변 (Frequently Asked Questions) +-----------------------------------------------------+ | I. 라 이 센 스 (License Agreement) | +-----------------------------------------------------+ I-1. 총 칙 (1) 'CWB 98 PE'는 사용료를 지불해야 하는 쉐어웨어(ShareWare)입니다. 'CWB 98 PE'에는 'CrazyWWWBoard.cgi'와 'CrazyAdmin.cgi'가 있고 관련된 데이타(src, file, image, etc)가 포함되어 있습니다. (2) 본 계약서는 'CWB 98 PE'의 사용을 허락하는 것일 뿐, 소유권, 저작권을 이전하는 것은 아닙니다. (3) 사용자께서 'CWB 98 PE'를 설치하신 때부터 본 계약서의 효력이 발효되며, 대금을 지급하신 때부터 'CWB 98 PE' 사용이 허락됩니다. (4) Nobreak Technologies, Inc.(이하, 'Nobreak'라고 함)는 사용자가 개인, 비영리시민단체, 교육기관(유치원, 국민학교, 중.고교, 대학, 대학원, 부속도서관 등), 비영리자선단체인 경우에 한해 무료로 사용하는 것을 허가합니다(Free). 그러나 정부기관, 지방자치체, 종교단체, 영리단체 등 에서는 프리웨어가 적용되지 않습니다. (5) 사용자께서 수정된 'CWB 98 PE'를 배포 또는 판매하실 경우에는 'Nobreak'의 동의가 반드시 필요합니다. +-------[ 소유권, 저작권자에게 연락 방법 ]--------+ | EN, Etc : copyright@nobreak.com | | KR : copyright-kr@nobreak.com | | JP : copyright-jp@nobreak.com | +-------------------------------------------------+ I-2. 사용 허락 사용자께서는 (1) 'CWB 98 PE''를 네트워크나 인터넷에 접속하고 있는 서버(이하, '서버' 라고 함)의 저장 매체에 설치하여 사용하실수 있습니다. (2) 백업(backup)을 위해 'CWB 98 PE'를 복제해서 보관하실 수 있습니다. (3) 수정되지 않은 'CWB 98 PE'의 복제물을 무제한 복사해서 반포할 수 있습니다. 단, 그 복제물의 소유권은 'Nobreak'에 있으며, 반포자는 써플라이어(배포자)가 되는것은 아닙니다. 그리고, 반포되는 'CWB 98 PE'의 복제물에는 이하의 항목이 빠짐없이 포함되어야만 합니다. 1) 쉐어웨어(ShareWare)의 명시 2) 본계약서 3) 'CWB98PE' 상의 파일과 데이타등의 소유권, 저작권이 'Nobreak'에 있음을 명시 (4) 2조3항의 경우, 복제물을 받은 제3자가 본계약서에 동의해, 쉐어웨어 대금을 'Nobreak'에 지불하면 'CWB 98 PE'의 사용을 허락합니다. 또한, 써플라이어(배포자)라 함은 'Nobreak'와 협정을 맺어 배포하는 자을 말합니다. I-3. 사용 제한 사용자께서는 (1) 'CWB 98 PE'의 소스코드와 파일(HTML, txt, image)을 설치한 서버의 환경에 맞추어 사용하시는 한, 제품을 구입한 사용자에 한해 수정, 개작을 하실 수 있습니다. 단, 그 외의 어떠한 경우에도 저작권을 갖고 있는 'Nobreak'의 동의를 얻어야만 합니다. (2) 'CWB 98 PE'를 랜딩(lending), 리스(lease)하거나 또는 'CWB 98 PE'를 기본 으로 해서 2차적 저작물을 창작할 경우, 저작권을 갖고 있는 'Nobreak'의 동의를 얻어야만 합니다. I-4. 써비스와 무보증 'Nobreak'는 (1) 'CWB 98 PE'는 최적으로 판단되는 상태로 제공되는 것으로서, 그 사용과 성능에 관해서는, 일체 보증하지 않습니다. 단지, 쉐어웨어 대금을 'Nobreak'에 지불한, 사용권을 가진 사용자에 한해서, 지속적인 서비스와 신뢰적인 문제해결을 제공합니다. (2) 'CWB 98 PE', 또는 도큐멘테이션(documentation)을 사용함으로써 얻어지는 성능, 결과에 대해서 보증할 수 없습니다. 단, 사용자로부터 결함(bug) 지적이 있을 경우, 개선하도록 노력합니다. (3) 제3자의 권리 침해, 상품성, 특정 목적의 적합성에 관하여 명시적, 암시적 보증은 하지 않습니다. I-5. 책임 제한 'Nobreak'는 'CWB 98 PE'로 인한 일실이익(逸失利益)을 포함한 결과적, 우발적, 또는 특별한 손해에 대해서, 그것이 'Nobreak'의 대리점이 이러한 손해가 발생 할 가능성에 대해서 알고 있더라도, 책임을 지지 않습니다. 어떤 경우에도 모든 손해에 대한 'Nobreak'의 배상액은 'CWB 98 PE'의 쉐어웨어 금액을 넘지 않는 것으로 합니다. I-6. 저작권, 소유권 'CWB 98 PE'와 'Nobreak' 또는 서플라이어(supplier)가 소유하며, 한국, 일본, 미국등의 저작권에 관한 법률, 국제법, 국제조약, 국제적인 저작권협정에의해 보호를 받습니다. +------------------------------------------------------+ | II. 소프트웨어 정보 (SOFTWARE & CONTACT INFORMATION) | +------------------------------------------------------+ II-1. 소프트웨어 정보 (Software Information) - 명 칭 : CrazyWWWBoard - 판 번 호 : 98 Professional Edition - 종 류 : Common Gateway Interface - 용 도 : Web based Public Bulletin Board, Public Morgue - Platform : All kind of UNIX - 제작회사 : Nobreak Technologies, Inc. - 개 발 자 : Seung-young, Kim (nobreak@nobreak.com) - 배 포 처 : http://cwb98.cgiserver.net ftp://ftp.cgiserver.net II--2. 문의처 (Contact Information) * American and Other english user - Administrative Contact : admin@nobreak.com - Copyright Contact : copyright@nobreak.com - Order Contact : sales@nobreak.com - Technical Contact : support@nobreak.com * Korean user - Administrative Contact : webmaster@nobreak.com - Copyright Contact : copyright-kr@nobreak.com - Order Contact : sales-kr@nobreak.com - Technical Contact : support-kr@nobreak.com * Japanese user - Administrative Contact : webadmin@nobreak.com - Copyright Contact : copyright-jp@nobreak.com - Order Contact : sales-jp@nobreak.com - Technical Contact : support-jp@nobreak.com +-----------------------------------------------------+ | III. 제품 구입 및 등록 (Registeration) | +-----------------------------------------------------+ III-1. 웹(web)으로의 접속. 소프트웨어 구입(등록) 정보는, 다음 웹 페이지에서 접할 수 있다. - http://cwb98.cgiserver.net III-2. Email로 접속 웹상으로의 접속이 불가할 경우엔 다음의 email로 문의토록 한다. - English User : sales-en@nobreak.com - Korean User : sales-kr@nobreak.com - Japanese User : sales-jp@nobreak.com +-----------------------------------------------------+ | IV. 설치 방법 (Installationn) | +-----------------------------------------------------+ IV-1. 패키지(package) 구하기 다음의 장소에서, 패키지를 다운로드한다. - http://cwb98.cgiserver.net - ftp://ftp.cgiserver.net 패키지는 다음과 같이 2가지 형식으로 제공되며, 이들의 유일한 차이점은 패키지를 압축한 소프트웨어의 종류가 다를뿐이다. gzip이 설치된 시스템에서는 용량이 적은 CrazyWWWBoard-98PE.tar.gz 파일을, 그렇지 않다면 CrazyWWWBoard-98PE.tar.Z 파일 을 다운받기 바란다. - CrazyWWWBoard-98PE.tar.gz (gzip 압축) - CrazyWWWBoard-98PE.tar.Z (compress 압축) 또한 C 컴파일러가 장착되지 않은 시스템을 위해 몇몇 주요 platform에 맞게 미리 컴파일된 실행파일(precompiled binary)도 배포되고 있으며, 그 파일명 형식은 다 음과 같다. - CrazyWWWBoard-98PE-export-PLATFORM.tar.Z - ex) CrazyWWWBoard-98PE-export-sparc_sun_solaris_2.6.tar.Z 주의) binary package에는 컴파일된 주요 실행파일만이 묶여 있으므로, full package 를 같이 다운로드 받도록 한다. 참고) 새로운 소프트웨어는 새로운 버그(bug)를 낳기 마련이다. 새로운 버그에 대해 패키지는 수정되어 다시 포장될수 있고, 이때에는 다음과 같은 규칙으로 패키 지 명칭이 수정될것이다. - CrazyWWWBoard-98PEx.tar.Z ('x'는 소문자 'a'부터 시작된다.) IV-2. 패키지 압축 해제 먼저, 패키지를 시스템의 적절한 위치에 옮겨 놓도록 한다. 자신의 홈디렉토리에 놓으면 무난할 것이다. 패키지는 여러개의 파일을 한대 묶어(tar)을 압축 소프트 웨어(gzip, compress)로 처리하였기에 다음과 같이 포장을 풀어야 한다. 1) CrazyWWWBoard-98PE.tar.gz 패키지 포장 풀기 $ ls CrazyWWWBoard-98PE.tar.gz $ gunzip CrazyWWWBoard-98PE.tar.gz $ ls CrazyWWWBoard-98PE.tar $ tar xvfp CrazyWWWBoard-98PE.tar ./CrazyWWWBoard-98PE/... 2) CrazyWWWBoard-98PE.tar.Z 패키지 포장 풀기 $ ls CrazyWWWBoard-98PE.tar.Z $ uncompress CrazyWWWBoard-98PE.tar.Z $ ls CrazyWWWBoard-98PE.tar $ tar xvfp CrazyWWWBoard-98PE.tar ./CrazyWWWBoard-98PE/... 주의) 대소문자를 반드시 구별하여야 한다. 알림) Precompiled binary를 다운받은 사용자는 먼저 full package를 위의 과정으로 설치한후, 생성되는 CrazyWWWBoard-98PE 디렉토리에 binary package를 이동 시킨후 압축을 해제한다. 그후 Compile-sh을 건너뛰고, Install-sh을 수행토록 한다. 일련의 과정은 다음과 같이 보인다. $ mv CrazyWWWBoard-98PE-export-sparc_sun_solaris_2.6.tar.Z CrazyWWWBoard-98PE/ $ uncompress CrazyWWWBoard-98PE-export-sparc_sun_solaris_2.6.tar.Z $ tar xvfp CrazyWWWBoard-98PE-export-sparc_sun_solaris_2.6.tar binary package를 설치하면 CrazyWWWBoard-98PE 하위에 bin 디렉토리가 생성 되며, 본 디렉토리 안에 컴파일된 CGI가 위치할 것 이다. (Compile-sh을 수행한것과 동일) IV-3. 컴파일과 설치 (Compiling & Installation) CWB를 컴파일 하기 위해서는 C Compiler가 필요하다. 시스템에 C Compiler가 없다면, 미리 컴파일된 binary package를 추가로 구하거나, C Compiler를 시스템에 설치하여 야 한다. 컴파일을 한후 인스톨과정을 거치면 설치가 완료하는데, CrazyWWWBoard-98PE 디렉토 리에 존재하는 다음의 두 스크립트(script)를 순서대로 수행하면 된다. - Compile-sh (Compile Wizard) - Install-sh (Install Wizard) 일련의 과정은 다음과 같이 보일것이다. $ cd CrazyWWWBoard-98PE $ ls -asCF Install-sh* cwb-4.0/ qDecoder-4.1/ Compile-sh* adm-1.0/ cwb-data/ conf/ gdbm-1.7.3/ $ ./Compile-sh (대소문자 구별) #################################################################### ## Messages... ## #################################################################### Press ENTER to continue... --[ Checking required system tools ]-------------------------------- Checking *C compiler : /usr/bin/gcc Checking *make utility : /usr/bin/make Checking *ar utility : /usr/bin/ar Checking crpyt library : 'libcrypt.a' not found. But it's OK. -------------------------------------------------------------------- Looks good... --[ Checking required directory ]----------------------------------- Checking directory : 'gdbm-1.7.3' OK. Checking directory : 'qDecoder-4.1' OK. Checking directory : 'adm-1.0' OK. Checking directory : 'cwb-4.0' OK. -------------------------------------------------------------------- Looks good, too... From now we will try to compile whole sources and libraries to ma- ke executable CGI binaries. Are you ready? Press ENTER to continue... --[ Compiling whole sources ]--------------------------------------- . . . --[ Copying CGI binaries ]------------------------------------------ Creating 'bin' directory. Copying 'adm-1.0/CrazyAdmin.cgi' -> 'bin/CrazyAdmin.cgi' Copying 'cwb-4.0/CrazyWWWBoard.cgi' -> 'bin/CrazyWWWBoard.cgi' -------------------------------------------------------------------- --[ SUCCESSFULLY COMPLETED : Compile-sh ]--------------------------- . . (c) Nobreak Technologies, Inc. -------------------------------------------------------------------- $ ls -asCF Install-sh* cwb-4.0/ qDecoder-4.1/ Compile-sh* adm-1.0/ cwb-data/ conf/ gdbm-1.7.3/ bin/ (Compile-sh후 생성됨) $ ls -asCF ./bin CrazyAdmin.cgi* CrazyWWWBoard.cgi* Compile-sh이 성공적으로 수행되었다면, Install-sh을 수행하여 패키지를 설치 하여야 한다. Install-sh을 수행하기전에 CGI가 설치될 디렉토리(cgi-bin)와 관련 자료(cwb-data)가 위치할 디렉토리를 결정하여야 한다. Install-sh을 수행하면 이 두가지에 대해 입력을 요구하는데 이때 자신의 사용 환경에 맞게 적절히 입력하면, 다음과 같은 계층으로 설치가 완료될것이다. ex) CGI-BIN : /home/nobreak/public_html/cgi-bin (계정 사용자) /usr/local/etc/httpd/cgi-bin (서버 관리자) ex) D A T A : /home/nobreak/public_html (계정 사용자) /usr/local/etc/httpd/htdocs (서버 관리자) +--[ Directory Hierarchy ]----------------------------------+ | | | /.../cgi-bin/ -+- CrazyAdmin.cgi | | +- CrazyAdmin.conf | | +- CrazyWWWBoard.cgi | | +- CrazyWWWBoard.conf | | | | /.../public_html/cwb-data/ -+- data/ | | ~~~~~~~~~~~ ~~~~~~~~ +- icon/ | | or htdocs (자동생성) +- icon-type/ | | +- logs/ | | +- message/ | | | +-----------------------------------------------------------+ Install-sh이 설치를 마치면 사용자에게 CrazyWWWBoard.conf의 두 항목을 수정 하도록 요구한다. (Install-sh의 마지막에 에디터를 호출할지 질의한다) - RealBasePath - HtmlBasePath RealBasePath는 cwb-data(Install-sh이 생성) 디렉토리의 시스템 절대경로를 뜻한다. Unix shell상에서 cwb-data 디렉토리로 이동한후 pwd 명령을 주었을때 표시되는 디렉토리를 기술한다. DATA 디렉토리의 입력을 요구할때, /home/nobreak/public_html 이라고 입력하였다면, RealBasePath는 /home/nobreak/public_html/cwb-data 가 되므로 다음과 같이 수정하여야 한다. - RealBasePath = /home/nobreak/public_html/cwb-data HtmlBasePath는 HTTP Document Root를 기준으로한 cwb-data 절대 경로이 다. 즉 웹상에서 나타나는 cwb-data 디렉토리 URL에서 domain을 제거한 형태로 기술한다. ex) Internet URL -> http://cwb98.cgiserver.net/~nobreak/cwb-data ~~~~~~~~~~~~~~~~~~ - HtmlBasePath -> /~nobreak/cwb-data 일련의 설치과정은 다음과 같이 보인다. $ ./Install-sh (대소문자 구별) #################################################################### ## Messages... ## #################################################################### Press ENTER to continue... --[ Checking CGI's Permission ]------------------------------------- Checking CGI : 'bin/CrazyAdmin.cgi' OK. Checking CGI : 'bin/CrazyWWWBoard.cgi' OK. --[ Checking directories ]----------------------------------------- Checking... -------------------------------------------------------------------- Looks good... From now we will try to install. Answer to the questions please. o You need to enter the full path of the directory where your CGI programs are kept. This directory must exist! >> INPUT -> /home/nobreak/public_html/cgi-bin______________________ o You need to enter the full path of the directory where your HTML document kept. We will create 'cwb-data' directory under this directory and we will copy our stuff under 'cwb-data'. >> INPUT -> /home/nobreak/public_html______________________________ o Which language do you use familiar? We support below languages. English : [en] , Korean : [kr] , Japanese : [jp] >> INPUT -> [kr] -------------------------------------------------------------------- Now we will do below things to install. [ CGI-BIN ] : /home/nobreak/public_html/cgi-bin [ CWB-DATA ] : /home/nobreak/public_html/cwb-data [ Language ] : kr -------------------------------------------------------------------- All looks good? [y/n] : y . . May I call 'vi /..../cgi-bin/CrazyWWWBoard.conf'? [y/n] : y [vi 에디터 화면 / 수정전] RealBasePath = /ABSOLUTE_SYSTEM_PATH/cwb-data HtmlBasePath = /ABSOLUTE__HTML__PATH/cwb-data [vi 에디터 화면 / 수정후] RealBasePath = /home/nobreak/public_html/cwb-data HtmlBasePath = /~nobreak/cwb-data :wq (vi 에디터 저장명령) $ 설치가 완료된후, 앞서말한 디렉토리 구조로 설치가 되었는지 확인하기 바란다. IV-4. 실 험 (test) 설치후 cgi-bin 디렉토리를 보면 두개의 CGI가 존재하는데 각각의 용도는 다음과 같다. - CrazyAdmin.cgi (관리메뉴, DB를 생성하고, CWB의 전반적인 설정을 관장한다) - CrazyWWWBoard.cgi (실제 홈페이지 문서에 링크되는 CGI로써 'CrazyWWWBoard.cgi?db=DB_NAME'과 같이 사용한다) 먼저 실험용 DB를 test 라는 이름으로 생성하기 위해 웹상에서 CrazyAdmin.cgi를 실행 시킨다. - ex) http://DOMAIN/~nobreak/cgi-bin/CrazyAdmin.cgi 다음의 Step 1 - Setp 5 과정을 행한다. [__] : 입력창 , [XXX] : 버튼 ==[CrazyAdmin.cgi Step 1]================================================= CrazyWWWBoard Administrative Center ---------------------------------------------------------------------- P a s s w o r d : [****___________] [ E N T E R ] ---------------------------------------------------------------------- (c) Nobreak Technologies, Inc. ========================================================================== 비밀번호는 초기에 '0000'으로 설정되어 있다. '0000'을 입력후 [ENTER] 버튼을 클릭한다. ==[CrazyAdmin.cgi Step 2]================================================= CrazyWWWBoard Administrative Center ----------------------------------------------------------------------- +-------+----+------------------+---------------+--------------+------+ | | | Articles | Ststistics | | | |DB Name|Type+-----+-----+------+-----+---+-----+ Options |Remove| | | |Total|Today|Upload|Total|Day|Today| | | +-------+----+-----+-----+------+-----+---+-----+--------------+------+ | T O T A L | 0| 0| 0.0M| 0| 0| 0| Powered by Nobreak | +------------+-----+-----+------+-----+---+-----+ Technologies, Inc. | | [test____] | [CREATE NEW DATABASE] | [Reload]| +------------+----------------------------------+---------------------+ [CHANGE PASSWORD] [MODIFY MESSAGES] [GLOBAL CONFIGURATION] ----------------------------------------------------------------------- (c) Nobreak Technologies, Inc. ========================================================================== 화면 좌측의 입력창에 생성할 DB(DataBase) 이름 'test'를 입력한후, [CREATE NEW DATABASE] 버튼을 클릭하여, 새로운 DB를 생성한다. 주의) Database 이름은 공백없이 알파벳(대소문자 구분), 숫자로 이루어진 문자 열만이 가능하다. 도트, 콤마, 하이픈, 언더바등의 문자는 허용되지 않음 에 주의한다. ==[CrazyAdmin.cgi Step 3]================================================= CrazyWWWBoard Administrative Center ----------------------------------------------------------------------- +-------+----+------------------+---------------+--------------+------+ | | | Articles | Ststistics | | | |DB Name|Type+-----+-----+------+-----+---+-----+ Options |Remove| | | |Total|Today|Upload|Total|Day|Today| | | +-------+----+-----+-----+------+-----+---+-----+--------------+------+ | test |emty| 0| 0| 0.0M| 0| 0| 0| [V][S][C][s] |[L][D]| +-------+----+-----+-----+------+-----+---+-----+--------------+------+ | T O T A L | 0| 0| 0.0M| 0| 0| 0| Powered by Nobreak | +------------+-----+-----+------+-----+---+-----+ Technologies, Inc. | | [________] | [CREATE NEW DATABASE] | [Reload]| +------------+----------------------------------+---------------------+ [CHANGE PASSWORD] [MODIFY MESSAGES] [GLOBAL CONFIGURATION] ----------------------------------------------------------------------- (c) Nobreak Technologies, Inc. ========================================================================== 새로운 DB test가 생성됨을 확인하고, test DB에 대한 [C](실제 브라우저에는 [CONF])버튼을 눌러 test DB에 대한 다음의 항목을 설정한다. ==[CrazyAdmin.cgi Step 4]================================================= CrazyWWWBoard 98 Professional Edition ------------------------------------------------------------ +----------------------------------------------------------+ | Web Board Information | +----------------------------------------------------------+ | New Password : [******__] Re-enter Password : [******__] | +----------------------------------------------------------+ +----------------------------------------------------------+ | Administrator Contact Information | +----------------------------------------------------------+ | Administrator Name : [Seung-young, Kim_______________] | | Administrator Email : [nobreak@nobreak.com____________] | +----------------------------------------------------------+ ------------------------------------------------------------ [Reset] [ S a v e ] [List] ========================================================================== 모든것을 디폴트 상태로 유지한체, 위의 항목만을 정확히 입력하고 [Save] 버튼 을 눌러 설정값을 DB에 저장한다. 알림) 만약 DB 설정을 하지 않은 상태에서 해당 게시판에 접속하게 되면, 환영 메시지와 함께 10초후 관리메뉴가 자동으로 표시된다. 이는 웹관리자와, 해당 게시판(DB)의 관리자가 다를경우, 해당 게시판 관리자가 CrazyAdmin.cgi를 거치지 않고도 원하는 설정을 할수 있도록 하기위함이다. 시스템내의 계정 사용자에게 게시판을 제공하려 할때, 이러한 방법은 유용하게 사용될수 있다. ==[CrazyAdmin.cgi Step 5]================================================= CrazyWWWBoard 98 Professional Edition ------------------------------------------------------------ [Admin] [Statistics] Searched Articles : 0/0 , Pages : 0/0 +----+---+--------------------------+--------+------+------+ | No |(c)| S u b j e c t | Name | Date | Hits | +----+---+--------------------------+--------+------+------+ ------------------------------------------------------------ Name o [Home] [Help] Subject x [______] [Go!!] [Write] [Reload] Text x (c) Nobreak Technologies, Inc. ========================================================================== 위와 같은 화면이 이상없이(아이콘의 깨어짐등의 문제없이) 보인다면, 설치가 정상적으로 수행된 것이다. 이제 홈페이지 문서에 다음과 같은 태그(tag)를 넣거나 브라우저의 Location 입력창에 아래의 URL을 적어 줌으로써 게시판을 사용할수 있다. - HTML TAG : Bulletin Board ~~~~~~~~~~~~~~~~~~~~~~~~~ - Browser Location : http://DOMAIN/~nobreak/cgi-bin/CrazyWWWBoard.cgi?db=test ~~~~~~~~~~~~~~~~~~~~~~~~~ 주의) CrazyAdmin.cgi는 관리자를 위한 도구이고, CrazyWWWBoard.cgi가 사용자 를 위한 CGI임에 주의하라. 각각의 게시판에 개별적인 관리자를 둘수가 있고, 이로인해 각각의 게시판이 별도의 관리 비밀번호를 갖게 된다. 만약 게시판 관리자가 비밀번호를 잃어 버렸을때, CrazyAdmin.cgi에서 [CONF] 버튼을 눌러 비밀번호를 수정해주는 것은 좋은 생각이다. +-----------------------------------------------------+ | V. 사용방법 (Usage) | +-----------------------------------------------------+ V-1. 디렉토리 구조 설명 cgi-bin/ cwb-data/ -+- data/ +- message/ +- icon/ +- icon-type/ +- logs/ * cgi-bin 디렉토리 - CrazyAdmin.cgi : CrazyWWWBoard Administrative Center CGI - CrazyAdmin.conf : CrazyAdmin.cgi의 설정파일 - CrazyWWWBoard.cgi : CrazyWWWBoard CGI - CrazyWWWBoard.conf : CrazyWWWBoard.cgi의 설정파일 * cwb-data/data 디렉토리 - DB_NAME.gdbm : 게시판 DB 파일 - DB_NAME : DB에 업로딩된 파일이 저장되는 디렉토리 * cwb-data/message 디렉토리 - htmlhead.html : CWB의 HTML 머릿말 - htmltail.html : CWB의 HTML 꼬릿말 - mailhead.txt : 메일발송시의 머릿말 - mailtail.txt : 메일발송시의 꼬릿말 - help*.* : HELP 아이콘이 링크되는 도움말 파일 * cwb-data/icon 디렉토리 - *.gif : CWB에서 사용되는 아이콘 * cwb-data/icon-type 디렉토리 - *.gif : CWB에서 업로딩 파일형식 표시용 아이콘 * cwb-data/logs 디렉토리 - adm_access_log : CrazyAdmin.cgi 접속 로그 - adm_error_log : CrazyAdmin.cgi 에러 로그 - error_log : CrazyWWWBoard.cgi의 에러 로그 - access_log.DB_NAME : DB별 접속 로그 - error_log.DB_NAME : DB별 에러 로그 V-2. CrazyAdmin.cgi 사용법 ==[CrazyAdmin.cgi 메인화면]=============================================== CrazyWWWBoard Administrative Center ----------------------------------------------------------------------- +-------+----+------------------+---------------+--------------+------+ | | | Articles | Ststistics | | | |DB Name|Type+-----+-----+------+-----+---+-----+ Options |Remove| | | |Total|Today|Upload|Total|Day|Today| | | +-------+----+-----+-----+------+-----+---+-----+--------------+------+ | down | pub| 422| 42|894.5M| 3211|320| 611| [V][S][C][s] |[L][D]| +-------+----+-----+-----+------+-----+---+-----+--------------+------+ | faq |emty| 0 | 0 | 0.0M| 0| 0| 0| [V][S][C][s] |[L][D]| +-------+----+-----+-----+------+-----+---+-----+--------------+------+ | qna | pub| 1213| 15| 7.6M|10627|664| 466| [V][S][C][s] |[L][D]| +-------+----+-----+-----+------+-----+---+-----+--------------+------+ | T O T A L | 1635| 97|902.1M|13838|984| 1077| Powered by Nobreak | +------------+-----+-----+------+-----+---+-----+ Technologies, Inc. | | [________] | [CREATE NEW DATABASE] | [Reload]| +------------+----------------------------------+---------------------+ [CHANGE PASSWORD] [MODIFY MESSAGES] [GLOBAL CONFIGURATION] ----------------------------------------------------------------------- (c) Nobreak Technologies, Inc. ========================================================================== * [CREATE NEW DATABASE] 버튼 입력창에 DB명을 입력한후 클릭하면 새로운 DB가 생성된다. 만약 규정에 어긋난(A-Z, a-z, 0-9 이외의)문자가 DB_NAME으로 사용된다면, 'Only regular expression(0-9, A-Z, a-z) is allowed for the database name.' 과 같은 오류 메시지를 접할것이다. * Options 항목 [V] 버튼 (VIEW) : 해당 DB를 보여준다 [S] 버튼 (STAT) : 해당 DB의 접속 통계화면을 보여준다 [C] 버튼 (CONF) : 해당 DB의 설정화면을 보여준다 [s] 버튼 (SYNC) : 해당 DB를 reorganization 한다. 주의) SYNC는 DB를 재 편성한다. 사용하지 않아도 무방하지만, 해당 DB의 게시물 갯수가 매 1만건을 초과할때 한번씩 수행해주면 해당 DB에 대해 약간(거의 못느끼겠지만)의 성능 향상을 기대할수 있다. DB를 자주 reorganization하 는것이 나쁜 영향을 주지는 않으나, 그리 바람직하진 않다고 생각한다. 게시물의 겟수가 1만, 2만, 3만, ... 에서 한번씩 수행해주는것이 대부분의 경우 적당한 수행주기가 될 것이다. 안해주어도 별 문제는 없다. * Remove 항목 [L] 버튼 (LOG) : 해당 DB의 로그를 삭제한다. 통계가 초기화 될것이다. [D] 버튼 (DB) : 해당 DB를 삭제한다(로그를 포함하여 업로딩된 파일까지 관련된 모든 파일들이 삭제된다) * [CHANGE PASSWORD] 버튼 CrazyAdmin.cgi의 비밀번호를 변경한다. 비밀번호는 CrazyAdmin.conf 파일에 암호화 되어 저장된다. 비록 암호화 되어 저장된다 하여도, 본 파일을 웹상에서나 계정상의 타인이 접근하지 못하도록 파일의 퍼미션(permission)은 0600을 유지토록 한다.(설치시 조정됨) $ ls -al CrazyAdmin.conf -rw------- 1 nobreak power 13 Mar 28 15:32 CrazyAdmin.conf ==[CrazyAdmin.cgi 비밀번호 변경화면]====================================== CrazyWWWBoard Administrative Center ------------------------------------------------------------------------ +----------------------------------------------+ | C h a n g e P a s s w o r d | +-------------------+--------------------------+ | New Password | [******________________] | +-------------------+--------------------------+ | Re-enter Password | [******________________] | +-------------------+--------------------------+ [ APPLY NEW PASSWORD ] [Back] ------------------------------------------------------------------------ (c) Nobreak Technologies, Inc. ========================================================================== * [MODIFY MESSAGES] 버튼 ==[CrazyAdmin.cgi 메시지 변경화면]======================================== CrazyWWWBoard Administrative Center ------------------------------------------------------------------------ +----------------------------------------------------------------------+ | System Default HTML Messages | +------------+---------------------------------------------------------+ | CWB Output | BROWSER TITLE | +------------+---------------------------------------------------------+ | | +----------------------------------------------------++ | | HTML Header| | 'cwb-data/message/htmlhead.html'의 내용 || | | | +----------------------------------------------------++ | +------------+---------------------------------------------------------+ | CWB Output | Main Contents HERE | +------------+---------------------------------------------------------+ | | +----------------------------------------------------++ | | HTML Tailer| | 'cwb-data/message/htmltail.html'의 내용 || | | | +----------------------------------------------------++ | +------------+---------------------------------------------------------+ | CWB Output | | +------------+---------------------------------------------------------+ +----------------------------------------------------------------------+ | System Default Email Messages | +------------+---------------------------------------------------------+ | | +----------------------------------------------------++ | |Email Header| | 'cwb-data/message/mailhead.html'의 내용 || | | | +----------------------------------------------------++ | +------------+---------------------------------------------------------+ | CWB Output | Contents of article HERE | +------------+---------------------------------------------------------+ | | +----------------------------------------------------++ | |Email Tailer| | 'cwb-data/message/mailtail.html'의 내용 || | | | +----------------------------------------------------++ | +------------+---------------------------------------------------------+ [ SAVE MESSAGES] ------------------------------------------------------------------------ (c) Nobreak Technologies, Inc. ========================================================================== 'System Default HTML Messages'는 CWB가 목록보기등의 화면 HTML을 출력할때 머릿말과 꼬릿말로 사용할 HTML 태그를 입력한다. CWB Output이라 되어 있는 부분은 CWB가 자동으로 출력해주는 부분임을 주의한다. ex) HTML Header
CrazyWWWBoard 98 Professional Edition

ex) HTML Tailer
(c) Nobreak Technologies, Inc.
'System Default Email Messages'는 포스팅된 게시물을 Email로 전달하는 과정 에서의 머릿말과 꼬릿말을 의미한다. ex) Email Header + New article is posted. ex) Email Tailer + Powered by Nobreak Technologies, Inc. ==[Email 전달형태]======================================================== + New article is posted. -- [ Article Information ] ------------------------------------------ Name : Seung-young, Kim (mailto:nobreak@nobreak.com) Subject : Re: It's lunch time!!! View : http://..../CrazyWWWBoard.cgi?db=cwb&mode=read&num=45 Reply : http://..../CrazyWWWBoard.cgi?db=cwb&mode=reply&num=45 Attached : http://..../cwb-data/data/announce/pizza.jpg (24 kbytes) -- [ Contents ] ----------------------------------------------------- Me too! Yoon, Cho wrote: > I'm so hungry. ---[ End ] ---------------------------------------------------------- + Powered by Nobreak Technologies, Inc. ========================================================================== 알림) 각 DB별로 별도의 HTML Header, Tailer를 입력할수도 있다. 이때, CWB는 시스템 기본 머릿말, 꼬릿말을 사용치 않고, DB에 설정된 머릿말, 꼬릿말을 사용한다. Email Header, Tailer도 같은 방식으로 동작한다. 알림) 쉘상에서 직접 에디터로 cwb-data/messages/ 디렉토리의 관련 파일들을 수정하여도 동일한 결과를 얻을 수 있다. * [GLOBAL CONFIGURATION] 버튼 CWB의 설정파일인 CrazyWWWBoard.conf 파일을 수정하는 메뉴이다. 역시 쉘상에서 직접 'vi CrazyWWWBoard.conf'하여 수정하여도 동일한 결과를 얻을수 있다. ==[CrazyAdmin.cgi 메시지 변경화면]======================================== CrazyWWWBoard Administrative Center ------------------------------------------------------------------------ +----------------------------------------------------------------------+ | Global Configuration | +----------------------------------------------------------------------+ | +---------------------------------------------------------------++ | | | 'cgi-bin/CrazyWWWBoard.conf'의 내용 || | | | || | | | ex) ElementName = ValueString || | | | AllowUpload = true || | | +---------------------------------------------------------------++ | +----------------------------------------------------------------------+ [ SAVE CONFIGURATION] ------------------------------------------------------------------------ (c) Nobreak Technologies, Inc. ========================================================================== 화면에 표시되는 주석을 참고하며 각각의 element를 적절히 수정하도록 한다. Element들은 대부분의 시스템에 적합하도록 기본 설정되어 있는데, 그중 한번쯤 살펴보아야 할 element들은 다음과 같다. ('*'표시 반드시 확인요) * RealBasePath : cwb-data 디렉토리의 시스템 경로 * HtmlBasePath : cwb-data 디렉토리의 HTML 경로 - DefaultCharSet : CWB의 출력을 표시할 클라이언트측 문자셋 * DefaultTitle : 클라이언트 브라우저 타이틀 - AllowUpload : 업로딩 불가 - UploadLimit : 업로딩 용량 제한 - AllowDBhtml : DB별 HTML Header, Tailer 사용 불가 - HiddenAdminLink : CWB 목록보기화면 Admin 아이콘 생략 - HiddenStatLink : CWB 목록보기화면 Statistics 아이콘 생략 - HiddenHelpLink : CWB 목록보기화면 Help 아이콘 생략 - AllowDBmail : DB별 Email Header, Tailer 사용 불가 * SendmailDirectory : sendmail이 설치된 시스템 경로 * MailOrganization : Email에 첨부될 기관명칭 V-3. CrazyWWWBoard.cgi 사용법 'CrazyWWWBoard Administrative Center'(CrazyAdmin.cgi)를 사용하여 DB를 생성 한후 행하는 가장 기본적인 행동은 홈페이지 문서에 해당 게시판의 링크(link)를 생성하는 것이다. 다음과 같은 링크를 홈페이지에 삽입한다. - Board - Board 링크를 삽입하는 작업으로 해야할 일은 모두 끝났다고 볼수 있다. 이제 실제 링크를 클릭하였을때 화면에 표시되는 게시판의 형태와 기능들을 알 아보자. ==[CrazyWWWBoard.cgi?db=DB_NAME 표시형태]================================= CrazyWWWBoard 98 Professional Edition ----------------------------------------------------------------------- [Admin] [Statistics] Searched Articles : 110/110 , Pages : 20/22 +----+---+---------------------------+-----------------+---------+----+ | No |(c)| S u b j e c t | Name | Date |Hits| +----+---+---------------------------+-----------------+---------+----+ | 15 | # |+ I need qDecoder | Yoon, Cho |Mar 23,98| 75 | +----+---+---------------------------+-----------------+---------+----+ | 14 | # | + Re: I need qDecoder | Gyu-sang, Cho |Apr 08,98| 8 | +----+---+---------------------------+-----------------+---------+----+ | 13 | @ | - Re: Here it is... | Jin-soo, Park |Apr 12,98| 22 | +----+---+---------------------------+-----------------+---------+----+ | 12 | # | - Re: I need qDecoder | Young-phil, Kim |Apr 09,98| 3 | +----+---+---------------------------+-----------------+---------+----+ | 11 | @ |- Photo of Jailman pants | Chang-gyun, Doo |Feb 23,98| 18 | +----+---+---------------------------+-----------------+---------+----+ [1][Prev]-[11][12][13][14][15][16][17][18][19][20]-[Next][22] ----------------------------------------------------------------------- Name o [Home] [Back] [Help] Subject x [______] [Go!!] [Backward] [Forward] Text x [Write] [Reload] (c) Nobreak Technologies, Inc. ========================================================================== 알림) CWB는 브라우저의 상태바(Status Bar)를 이용하여, 표시되지 않은 추가 정보를 보여준다. 예로, 제목을 포인팅하게 되면 상태바에 다음과 같은 정보가 표시될 것이다. - Physical number 14 , Virtual number 8, Included 32 lines 이는 게시물이 DB에 저장된 고유 sequence 번호가 14이고, 이것이 화면에 표시되면서 게시물순서에 따라 8번째에 위치(중간에 삭제된 게시물이 있으 므로)하며, 본문은 32줄로 구성되어 있음을 나타낸다. * [Admin] 링크 해당 DB의 관리메뉴로 들어간다. CrazyAdmin.cgi에서 [CONF] 버튼을 눌렀을때 나오는 화면과 동일한 화면이다. DB의 설정변경은 이렇게 2가지 방법으로 행할 수 있다. 만약 DB 설정을 CrazyAdmin.cgi에서만 행하고 싶다면(Admin 아이콘을 제거하고 싶다면) CrazyAdmin.cgi의 Global Configuration(CrazyWWWBoard.conf) 메뉴에서 HiddenAdminIcon을 true로 설정하면 된다. * [Statistics] 링크 해당 DB의 접속 통계를 보여준다. 역시 CrazyAdmin.cgi에서만 통계를 확인하고, 사용자에게 공개하고 싶지 않다면 Global Configuration에서 HiddenStatIcon을 true로 설정한다. * Searched Articles : 110/110 의 의미 앞의 110은 검색된 게시물의 갯수를 의미하며 뒤의 110은 총 계시물수를 의미 한다. 사용자가 검색창을 이용하지 않았을때 이 두 값은 같다. 그러나 검색창에 검색어를 입력하여 검색을 수행하였다면, 23/110 과같은 형태로 검색된 게시물의 갯수가 표시될것이다. * Pages :20/22 의 의미 총 22개의 페이지가 있으며, 현재 20번째 페이지가 표시되었음을 뜻한다. * [Home] 링크 DB 관리메뉴에서 설정한 홈페이지가 링크된다. 홉페이지 입력란을 공백처리하면 아이콘은 생략된다. * [Back] 링크 역시 DB 관리메뉴에서 설정한 이전 페이지 링크이다. 공백처리하면 생략된다. 알림) Back 아이콘과 Home 아이콘에 같은 URL을 넣지 않기 바란다. 이는 사용자 에게 혼란을 초래할 수 있다. 홈페이지와, 게시판이 링크된 페이지(게시판 들어오기 전 페이지)가 다를 때 사용할 용도로 Back 링크는 구상되었다. * [Forward], [Backward] 링크 현재 보이는 페이지의 다음(+1), 이전(-1) 페이지를 호출한다. * [Write] 링크 새로운 글을 작성하기 위한 화면을 보여준다. * [Reload] 링크 1페이지 부터 다시 표시한다. 즉, 게시판에 다시 접속하는것과 같은 효과이다. 이것이 유용한 경우는, 검색창을 이용하여 검색된 게시물로 작업 하다가 전체 게시물을 보고자 할 경우이다. * 검색창 사용법 성명(&파일명), 제목, 본문에 대해 병렬적인 검색이 가능하다. 원하는 단어를 입력창에 적은후 '검색' 버튼을 클릭하면, 단어가 들어있는 게시물이 표시된다. 예를 들어 'nobreak' 라는 단어가 '제목'이나 '본문'에 들어간 게시물을 보고 자 하여 검색을 시도하면, nobreak라는 단어는 빨간색으로 표시되며 해당되는 게시물만이 나타날 것 이다.(대소문자는 무시된다, nobreak와 NOBREAK는 같다) '성명'에 대한 검색은 게시물의 작성자 이름과 업로딩된 파일명에 대해 동시에 검색한다 따라서, '성명'만을 선택한후 'kim'이란 단어로 검색을 시도하면, 작 성자가 'S. Y. Kim' 인 게시물도 찾아지고, 업로딩된 파일이 'kim.jpg'인 게시 물도 검색될 것이다. 힌트) 업로딩된 파일을 찾고자 할때는 '성명'만 선택하고 "."(도트, 파일명은 일반적으로 FILENAME.EXT로 구성되므로 도트가 대부분 존재한다)로 검색 을 시도할수 있다. 혹은, GIF 파일이 업로딩된 게시물을 찾고자 한다면 ".gif"로 검색을 시도할 수 있다. 주의) 단어에 대한 확장은 하지 않는다. 즉 '게시판 관리'라는 검색어는 일반 적인 검색 엔진에서 처럼 '게시판' and '관리' 혹은, '게시판' or '관리' 로 확장되어 검색하지 않고, '게시판 관리' 그 자체로(공백도 포함하여) 검색이 이루어 진다. ==[게시물 작성 화면]====================================================== CrazyWWWBoard 98 Professional Edition ----------------------------------------------------------------------- +---------------+-----------------------------------------------------+ | Name | [Seung-young, Kim________] | +---------------+-----------------------------------------------------+ | E-Mail | [nobreak@nobreak.com_________________] | +---------------+-----------------------------------------------------+ | Subject | [Nobreak Technologies, Inc.__________] [******__] | +---------------+-----------------------------------------------------+ | Attach Text | [C:\DOC\News.txt_________] [BROWSE...] | +---------------+-----------------------------------------------------+ | +----------------------------------------------------------------++ | | | Dear sir. || | | | ..... || | | | Thank you. || | | +----------------------------------------------------------------++ | +---------------+-----------------------------------------------------+ | Upload Binary | [F:\IMAGE\smile.gif______] [BROWSE...] | +---------------+-----------------------------------------------------+ ----------------------------------------------------------------------- [ S u b m i t ] [List] (c) Nobreak Technologies, Inc. ========================================================================== Password 입력란은 추후 게시물을 수정, 삭제할때 요구된다. 만약 Password가 입력되지 않는다면, 해당 게시물은 DB 관리자만이 삭제 할 수 있다. 게시물 작성화면에서 주의할점은 Attach Text와 Upload Binary의 용도이다. Attach Text는 일반 텍스트 문서(NOTEPAD.EXE로 볼수 있는)를 첨부하는 기능이다. 본문에 글을 작성하지 않고도, 같은 효과를 줄수 있다. 즉 Attach Text로 전송된 문서는 본문입력창에 작성된 글 아래에 추가되어 저장된다. 문서를 클립보드를 이용하여 Copy하고 Paste하는 번거로움을 없애기 위한 기능이다. 반대로 Upload Binary기능은 그림, 음악, 문서등 모든형태의 파일을 업로딩하는 기능이다. 업로딩된 파일은 해당 게시물을 읽을때 Download : XXXX 같은 링크가 생성되어, 사용자가 다운로딩 할수 있다. CWB에서는 여기에 추가적으로 mime type을 부여하였다. 즉, 그림파일(gif, jpg)이 업로딩 되었다면 게시물을 읽을때 그림을 보여주고, 음악파일(wav, mid)이나, 영상파일(mov, avi)일 경우엔 play 하여주고, 일반 텍 스트 문서일경우 처음의 몇라인을 간략히 보여주는 기능을 갖고 있다. 많이 쓰이는 대부분의 파일에 대해 이미 설정이 되어 있지만, CrazyAdmin.cgi의 Global Configuration에서 파일의 확장자에 따른 표시 형태를 추가 선언 할 수 있다. 알림) 게시물을 쓰려할때 '이름'과 'Email'란이 공백으로 있지않고, 본인의 이름 또는 타인의 이름이 나타나는것은 정상이다. 이를 쿠키 기능이라 하는데, 매번 글을 쓸때마다 동일한 이름과, Email을 입력하는 번거로움을 피하기 위해 존재하는 기능이다. 즉, 한번 게시판에 글을 쓰게되면, 그때의 이름과 Email이 사용자 브라우저에 저장되어 있다가, 다음번 요청때 CWB가 그것을 얻어와 대신 표시하여 주는것이다. 매우 편리한 기능이다. 그러나, 만약 CWB가 학교의 PC실과 같이 여럿이 공유해서 사용하는 장소에 설치된다면, 이는 오히려 불편할 수 있다. 이때에는 CrazyAdmin.cgi의 Global Configuration메뉴에서 CookieEnable = false 로 설정을 변경하여 쿠키기능을 정지시키도록 한다. 위와 같이 포스팅된 게시물은 다음과 같이 보여질 것이다. ==[게시물 보기 화면]====================================================== CrazyWWWBoard 98 Professional Edition ----------------------------------------------------------------------- March 27, 1998 (14:36) from nobreak.nobreak.com Written by Seung-young, Kim (nobreak@nobreak.com) Hits:22 , Lines:4 +---------------------------------------------------------------------+ | Nobreak Technologies, Inc. | +---------------------------------------------------------------------+ | Download : smile.gif (3 Kbytes) | | ----------------------------------- | | +----------------------+ | | | oOOOo IMAGE SHOW | <- Uploaded image | | | OOOOO S/m/i/l/e | | | +----------------------+ | +---------------------------------------------------------------------+ | Dear sir. | | .... | | Thank you | | *Attached text 'News.txt' will be appeared here. | +---------------------------------------------------------------------+ ----------------------------------------------------------------------- [Modify] [Delete] [Write] [Reply] [Backward] [Forward] [List] (c) Nobreak Technologies, Inc. ========================================================================== * [Modify] [Delete] 링크 게시물을 수정, 삭제할때 사용되며, 게시물 작성시 비밀번호가 입력되지 않았 다면, DB 관리자 패스워드만이 유효하다. 주의) 게시물의 수정은 본문을 수정하고, 새로운 Attach Text를 추가할수 있지 만, 업로딩된 파일에 대해 다른 파일로 수정할수는 없다. 게시물에 업로 딩된 파일을 수정(제거, 교체)하는 한 방법은 게시물을 삭제하고, 다시 작성 하는 것이다. 만약 쉘상에서 CWB에 접근할수 있는 권한이 있다면, 편법적인 방법이지만 저장되어 있는 업로딩 파일을 새로운 파일로 덮어 씌울수 있다. 물론 이때, 사용상에는 별 문제가 없으나, 파일의 용량은 다르게 표시될 것이다. 이 방법은 또한 용량이 큰 파일을 업로딩 할때도 사용될수 있다. 업로딩할 파일과 동일한 파일명으로 작은 용량의 파일을 업로딩 한후, 위의 방법으로 저장된 파일을 교체하는 것이다. 그러나, 이는 어디까지나 편법이자 하나의 방법일 뿐, 권장하고 싶지 않다. * [Write] [Reply] 링크 새로운 게시물을 작성하거나, 게시물에 대한 답변을 할때 사용한다. 게시물의 답변은 date 모드와 thread 모드가 있는데, 이는 DB 관리자 화면에서 설정한다. Data 모드는 날짜순으로 소팅(Sorting)되어 목록이 보여짐을 의미하고 thread 모드는 답변들이 해당글의 아래에 나타남을 의미한다. * [Backward] [Forward] 링크 현재 게시물의 앞/뒤 게시물로 간다. 알림) [Backward] [Forward] 아이콘을 포인팅하면, 사용자 브라우저 상태바에 앞/뒤 게시물의 제목이 표시된다. * [List] 링크 리스트(목록)화면으로 되돌아 간다. 이는 CWB를 다시 호출하지 않고, 브라우저 상에 캐슁(caching)되어 있는 목록 화면을 보여준다. (캐슁되어 있지 않을땐, CWB를 호출한다) 브라우저상의 Back버튼 보다 List 링크가 효과적인 이유는 다음과 같다. 예를들어, 사용자가 10번글을 읽고, forward 링크를 사용하여 바로 11번, 12번 게시물을 참조하였을때, 다시 목록을 보기 위해선 Browser의 Back버튼을 여러번 눌러야 하지만, List 버튼을 사용하면 한번에 목록보기 화면으로 점프한다. 알림) 게시물을 읽게되면 게시물 조회수(Hits)가 1 증가한다. 그러나, List 버튼은 캐슁된 목록을 보여주므로 조회수는 예전 상태를 유지할 것이다. 조회수 갱신을 위해 CWB를 다시 호출하는 것은, 모뎀같이 낮은 대역폭 사용자를 고려할때 적합한 방식이 아니라 생각한다. ==[DB 관리자 메뉴]======================================================== CrazyWWWBoard 98 Professional Edition ------------------------------------------------------------ +----------------------------------------------------------+ | Web Board Information | +----------------------------------------------------------+ | ... | +----------------------------------------------------------+ +----------------------------------------------------------+ | Administrator Contact Information | +----------------------------------------------------------+ | ... | +----------------------------------------------------------+ +----------------------------------------------------------+ | Article Configuration | +----------------------------------------------------------+ | ... | +----------------------------------------------------------+ +----------------------------------------------------------+ | User Interface | +----------------------------------------------------------+ | ... | +----------------------------------------------------------+ ------------------------------------------------------------ [Reset] [ S a v e ] [List] ========================================================================== 우리는 여러 DB에 공통적으로 적용되는 사항은 CrazyWWWBoard.conf(Global Configuration)에 각 DB별로 선택이 구분되어지는 부분은 DB별 관리자 메뉴에서 조정하도록 하였다. 반드시 입력이 되어야 하는 부분은 Password, Administrator Name, Administrator Email 항목이며 나머지는 기본설정을 유지하여도 좋다. + Web Board Information ('*'표시 반드시 기입요) * New Password, Re-enter Password DB 관리자 비밀번호를 설정한다. (최대 8자리) 이미 비밀번호가 설정되어 있는 상태라면, 새로운 비밀번호가 설정될 것이다. 이 비밀번호는 해당 DB의 인증에 유효하게 사용된다. - Browser Title 클라이언트(사용자) 브라우저의 타이틀로 사용될 메시지. (주의) HTML Header, Tailer가 'own html'로 선택되었을때 본 설정은 효력이 없다. - Title Message 게시판 상단에 위치할 해당 게시판 메시지 - HomePage URL, Target 게시판 좌측 하단에 위치하는 'Home' 아이콘에 링크될 홈페이지 주소이다. 생략시 아이콘 또한 출력되지 않는다. Target은 'Home' 아이콘을 클릭하였을때, 출력되는 프레임명이다. 다음과 같은 형식으로 실제 링크가 잃어난다. ICON - Back URL, Target HomePage URL과 같은 개념이다. 다만 링크되는 아이콘이 'Back' 아이콘 이다. 이는 게시판이 링크된 페이지와 홈페이지의 위치가 다를경우를 위해 고안되었 다. HomePage URL과 Back URL에 같은 주소를 넣는것은 사용자를 혼란케 한다. 생략시 아이콘도 출력되지 않는다. + Administrator Contact Information * Administrator Name 해당 DB를 관리할 관리자 이름을 기입한다. * Administrator E-mail 관리자의 Email을 기입한다. - Mail to Administrator 새로운 게시물이 포스팅되면 관리자에게 Email로 알려줄지의 여부를 선택한다. - Mail to Poster 관련글(reply)이 포스팅되었을때, original poster에게 Email로 알려줄지 선택 한다. 즉, A란 사용자의 글에 대해 답변이 있을때, 그것을 A에게 Email로 통지 하여주는 기능이다. - Language 게시판에 표시되는 메시지의 언어 형태를 선택한다. 영어, 한국어, 일본어가 지원된다. (알림) 이것은 실제 사용되는 언어를 뜻하는것은 아니다. Language를 영어로 선택하여도, 한국어로 작성된 게시물이 쓰여질 수 있다. 다만, 게시판 상의 '제목', '조회' 같은 메시지가 'Subject', 'Hits' 같이 표시될 뿐이다. - Character Set 실제 게시에 포스팅된 글이 표시될 문자셋을 지정한다. 공백으로 놓아도 좋으나 English 'iso-8859-1', Korean 'euc-kr', Japanese 'x-sjis'와 같이 설정하여도 좋다. 본 설정은 다음과 같은 태그를 추가 출력한다. (주의) 본 설정은 브라우저의 종류에 따라 화면 껌뻑임(redraw)이 발생 할 수 있다. (주의) HTML Header, Tailer가 'own html'로 선택되었을때 본 설정은 효력이 없다. - List Order 게시물 목록을 보여줄때의 정렬방식을 선택한다. By date : 최근에 포스팅된 게시물순으로 보여준다. (일반적인 게시판의 형태) By thread : By date와 같으나, 관련글(reply)은 원글의 다음에 들여쓰기 되어 표시된다. - Underlined Link 게시판의 링크(link)에 밑줄을 넣을지 말지 결정한다. 주의) 이 선택은 사용자의 브라우저에 따라 지원이 안될수도 있다. - Name First 목록 보기 화면에서, 성명란을 제목 앞에 놓을지, 제목 뒤에 놓을지 선택 한다. - Article Number 목록 보기 화면에서 게시물 번호를 출력할지의 여부를 선택한다. - Virtual Number 게시물 번호를 보여줄때, 물리적인 게시물번호를 보여줄지, 논리적인 게시물 번호 를 보여줄지 결정한다. 논리적 게시물 번호란, 검색된 게시물을 1부터 증가하는 숫자로 표시하는것을 말한다. (주의) Article Number가 disable일때, 본 설정은 의미가 없다. - Folder Icon 게시물 제목 앞부분에 표시되는 디렉토리 버튼의 출력 여부를 결정한다. 디렉토리 버튼은 3 종류가 있는데, 관련글이 있을때 표시되는 Open type과 관련글 이 없음을 표시하는 Close Type, 포스팅된 글이 최근임을 표시하는 New type이 있 다. - IP Address 익명의 포스팅을 허용하고자 할때, 본 설정을 enable 시키면, 해당 게시물을 작성한 호스트의 IP 주소를 보여주지 않으며, 기록하지도 않는다. 즉, enable 상태에서는 기존의 글도 IP Address가 표시되지 않으며, 새로운 게시물은 근원지 추적을 하지 않는다. 따라서 추후 disable 시켰을때도, 근원지 파악은 불가하 다. - File Upload 파일 업로딩을 허용할지 선택한다. 본설정이 enable 되었을대 쓰기 화면에 업로딩 창이 추가 표시된다. - File type Icon 목록 보기 화면에서 파일이 업로딩된 게시물을 아이콘으로 구별하여 줄지 선택한다. Enable일때 업로딩된 파일이 jpg라면 목록 보기 화면에서 해당 게시물 앞에 jpg 아 이콘이 표기 된다. - Link Target 이는, 게시판이 프레임(frame)안에서 사용될때 의미가 있다. 게시물의 내용에 존재하 는 링크를 선택하였을때 그 내용을 전체 화면으로 출력할지, 해당 프레임에 출력할지 선택한다. (주의) HTML Mode가 Auto Link로 선택되었을때만 효력이 없다. - Post Permission 누구나 글을 쓰도록 허용할지, 관리자만 쓰도록 할지 선택한다. 관리자만 글을 쓰도록 선택이 되면, 게시물을 작성하려 할때, 비밀번호 인증과정을 거치게 된다. - HTML Mode 게시된 글의 내용중 HTML을 무시할지 인식하게 할지 결정한다. 'Ignore HTML & Auto Link'가 선택되면, HTML표현은 무시되고, URL은 자동으로 링크가 걸린다. http://www.cgiserver.net 이라고 쓰여 있으면, 자동으로 링크가 걸려 표시될 것이며, nobrik@nobreak.com과 같은 Email 주소가 적혀 있어도 자동으로 링크가 표시 된다. 'Accept HTML'일때에는 HTML은 인식되어 표시되지만, CR(Enter)은 일반 텍스트의 개행을 위해 인식한다. (주의) Accept HTML일때 태그내의 잘못된 태깅의 사용은 게시물 전체가 표시되지 않을수 있다. 우리는 'Ignore HTML & Auto Link'를 사용하길 권한다. - Hide Search 목록 보기화면 하단의 검색창을 숨길것인지의 여부를 선택한다. - High Light Article 최근에 포스팅된 글일경우, File type Icon을 New type 아이콘으로 표시하여 구분지어주는 기능이다. 0일전 - 5일전 까지 선택 할 수 있다. (주의) File type Icon이 disable되어 있다면, 본 설정은 의미가 없다. - Articles / Page 목록보기 화면에서 한 페이지에 표시할 게시물의 갯수를 설정한다. * User Interface / Common - Font Size 게시판에 표시될 글자의 크기를 조정한다. (참고)EN, KR일때 General(font size 2)이 사용되고, JP일때 Big(font size 3)이 많이 사용된다. - Table Width 게시판의 폭을 조정한다. 기입하는 방법은 pixel에 의한 고정표기법과, %에 의한 상대 표기법이 있다. (예제) Table Width : [700_____] Table Width : [80%_____] - HTML Header, Tailer 게시판의 머릿말과 꼬릿말을 system default header, tailer를 사용할지 아래의 HTML header, HTML tailer를 사용할지 선택한다. (주의) 본설정이 'own html'로 설정되면, 'Browser Title', 'Title Message', 'Character Set' 설정은 무시된다. 따라서 HTML Header와 HTML Tailer에 직접 위의 사항을 태깅하여 주어야 한다. 따라서, CrazyAdmin.cgi에서의 'Modify Messages'메뉴에서 설정하는 'System Default Header, Tailer'의 태깅법과 다르게 입력되어야 한다. - HTML Header, HTML Tailer HTML Header, Tailer가 'own html'로 설정되었을때 여기에 기술되는 태그가 사용된다. 다음의 기본 골력을 참고하여 태깅한다. (예제) HTML Header +----------------------------------------------------------------------------++ | || | || | Browser Title || | || | || | || | || |
|| | Title Message
|| +----------------------------------------------------------------------------++ (예제) HTML Tailer +----------------------------------------------------------------------------++ |
|| | || | || +----------------------------------------------------------------------------++ * User Interface / List Module - Border Size 목록 보기 화면에서 게시물 리스트의 테두리(table border) 두께를 선택한다. - Long Subject 게시물의 제목이 길어 주어진 위치에 한줄로 삽입되지 못할때, 제목의 뒷부분을 자를것인지, 다음행으로 넘길것인지 선택한다. - Title Font Color, Title Bg Color, Article Font Color, Article Bg Color 해당 부분의 글자색과 배경색을 결정한다. (예제) Title Font Color : [#00FFAB__] Title Font Color : [GREEN____] Title Font Color : [#bc2244__] Title Font Color : [blue_____] * User Interface / Read Module - Title Border Size 게시물 읽기 화면에서 게시물의 제목 테두리 두께를 선택한다. - Text Border Size 게시물의 본문 테두리 두께를 선택한다. - Title Font Color, Title Bg Color, Text Font Color, Text Bg Color 해당 부분의 글자색과 배경색을 결정한다. + User Interface / Write Module - Title Font Color, Title Bg Color 게시물 쓰기 화면에서 해당 부분의 글자색과 배경색을 결정한다. - Default Subject 게시물 쓰기를 할때 '제목'란에 기본 표기되는 문자열을 입력한다. (예제) Default Subject : [여기에_병명을_적어주세요______] - Default Text 게시물 쓰기를 할때 '본문'란에 기본 표기되는 문자열을 입력한다. (예제) Default Text +-----------------------------------------------------------++ | 1. Product Code : || | 2. Address : || | 3. Zip Code : || +-----------------------------------------------------------++ * User Interface / Email Module - Email Header, Tailer 게시물이 포스팅되었을때, 게시물을 Email로 전송하여 주는데, 이때 Email의 머릿말과 꼬릿말을 system default header, tailer를 사용할지 아래의 Email header, HTML tailer를 사용할지 선택한다. (주의) MailToAdmin과 MailToPoster가 disable되어 있다면, 본설정은 의미가 없다. - Email Header, Email Tailer Email Header, Tailer가 'own signature'로 사용토록 설정되었을때 여기에 기술되는 문자열이 사용된다. 다음의 참고한다. (예제) Email Header +----------------------------------------------------------------------------++ | + New article is posted || | || +----------------------------------------------------------------------------++ (예제) Email Tailer +----------------------------------------------------------------------------++ | + Powered by Nobreak Technologies, Inc. || | || +----------------------------------------------------------------------------++ +-----------------------------------------------------+ | VI. 질문과 답변 (Frequently Asked Questions) | +-----------------------------------------------------+ Q-1. 웹상에서 CrazyAdmin.cgi, CrazyWWWBoard.cgi를 실행했을때 깨어진 문자만이 출력됩니다. A. HTTP Daemon(Web Server)에서 해당 위치의 CGI 실행을 거부하는 경우입니다. 관리자에게 다음의 설정을 부탁하십시요. 파일의 확장자가 'cgi'일때, 어느 Directory에서나 실행토록 설정 [Apache HTTPd] conf/srm.conf AddType application/x-httpd-cgi .cgi AddHandler cgi-script .cgi 설정된 위치에대해 CGI 실행을 허가 [ApacheNCSA HTTPd] conf/access.conf ## /home/ACCOUNT 계정 사용자 CGI 실행 허가 Options ExecCGI Indexes FollowSymLinks ~~~~~~~ Q-2. 'CrazyAdmin.cgi' 실행시 다음과 같은 오류 메시지가 나옵니다. Access logging(/ABSOLUTE_SYSTEM_PATH/cwb-data/logs/adm_access_log) fail. A. CGI가 설치된 디렉토리로 이동하셔서 CrazyWWWBoard.conf 파일의 다음 부분을 수정하십시요. - RealBasePath - HtmlBasePath Q-3. 실행시 다음과 같은 오류메시지가 나옵니다. Error !!! Wrong permission. CrazyAdmin.cgi must has setuid and setgid bit. You would better adjust it's permission by 'chmod 6755 CrazyAdmin.cgi' A. 'CrazyAdmin.cgi'와 'CrazyWWWBoard.cgi'는 6755로 퍼미션이 설정되어 있어야 합니다. 당음과 같이 수정하십시요. $ chmod 6755 CrazyAdmin.cgi $ chmod 6755 CrazyWWWBoard.cgi Q-4. CrazyWWWBoard.cgi 실행시 다음과 같은 오류메시지가 나옵니다. Error !!! DataBase Access Error : File open error A. 해당 Database가 등록되어있는지 확인하십시요. Q-5. 아이콘이 모두 깨어져 나옵니다. A. CrazyWWWBoard.conf의 'HtmlBasePath'가 잘못 설정되었거나, cwb-data가 HTML 문서 디렉토리에 설치되지 않았을 경우입니다. Q-6. 업로딩된 파일을 다운로드하려 하면 화면에 깨어진 글자만 나옵니다. A. 웹서버에 mime type 등록을 해주십시요. 예로, 확장자가 hwp인 파일을 다운로드 하려할때 깨어진 글자만이 출력된다면, 웹서버의 mime type 설정파일에 다음과 같이 등록하실수 있습니다. - application/x-hwp hwp Q-7. DB 관리자 비밀번호가 기억나지 않습니다. A. CrazyAdmin.cgi에서 [CONF] 버튼을 사용해 해당 DB의 관리메뉴를 호출한후 비밀번호를 변경저장합니다. Q-8. 'CrazyAdmin.cgi'의 마스터 패스워드가 기억나지 않습니다. A. CrazyAdmin.conf 을 삭제 하십시요. 그후 비밀번호 '0000'으로 접속 하십시요. Q-9. CrazyWWWBoard 3.x(2.x) 사용자 입니다. 기존의 제 DB를 사용할수 있나요? A. wwwboard/data/ 디렉토리의 모든 파일을 cwb-data/data 디렉토리로 이동하십시요 그후 DB 파일의 owner와 group을 CrazyAdmin.cgi의 owner와 group으로 변경하십 시요. 일련의 과정은 다음과 같습니다. $ mv wwwboard-3.x/data/* cwb-data/data/ $ cd cwb-data/data $ chown -R OWNER * $ chgrp -R GROUP * (주의) superuser(root) 권한이 필요할수도 있습니다. Q-10.이기종간(between heterogeneous systems)에도 기존의 DB를 사용할수 있습니까? A. 동일기종간에는 DB 변환과정 없이 100% 호환이 유지됩니다만, 이기종간에는 DB 변환 과정정을 거쳐 옮겨 주셔야 합니다. 'http://cwb98.cgiserver.net'에서 tranDB package를 양측의 서버에 설치하시고, DB 변환과정을 거쳐 목적 시스템에 포팅하십시요. Q-11.새로운 게시물을 다수의 email로 발송하고 싶습니다. A. 메일링 리스트를 구축하신후, DB 관리자 메뉴의 'Mail To Administrator'란에 설정된 메일링 리스트 주소를 기입하십시요. 예를들어, 새로운 게시물을 nobreak@nobreak.com과 einheit@nobreak.com에게 발송 하고자 하고, 메일링 리스트 주소를 all@nobreak.com 으로 한다면, 다음과 같이 설정하실수 있습니다. (여기서는 대표적인 두가지 방법을 소개합니다) 첫째는 sendmail의 aliase 기능을 이용하는 방법입니다. (superuser 권한 필요) $ vi /etc/mail/aliases (ATT 계열, ex:Solaris) $ vi /etc/aliases (BSD 계열, ex:Linux) all: nobreak@nobreak.com einheit@nobreak.com :wq! $ newaliases (변경된 aliases 파일 적용) 메일 전달 사용자를 별도의 파일에 저장할 경우 $ vi /etc/mail/aliases all: :include:/maillist/all.list :wq! $ vi /maillist/all.list nobreak@nobreak.com einheit@nobreak.com :wq! $ newaliases 둘째는, superuser 권한을 얻지 못하는 일반사용자들이 취할수 있는 방법입니다. 사용하지 않는 email 주소가 하나 필요합니다. 사용하지 않는 email 주소가 all@nobreak.com 일때, 계정에 접속하여, '.forward'파일 을 만든후 포워딩할 email 주소를 적어주시면 됩니다. $ telnet nobreak.com login:all password:xxxxxx $ cd (자신의 홈디렉토리로 이동) $ vi .forward nobreak@nobreak.com einheit@nobreak.com :wq! +-----------------------------------------------------+ +------------------ E N D --------------------+ +-----------------------------------------------------+