Xpress Engine
둘러보기로 가기
검색하러 가기
Xpress Engine (구 제로보드XE)에 대한 전반적인 사항을 정리한다.
Xpress Engine은 게시판 기능을 넘어서 ECM (Enterprise Content Management) 도구로 발전하고 있다.
- 라이센스 : GPL v2
- 단 Xpress Engine기본 프로그램의 변형이 아닌 모듈/애드온/위젯 프로그램과 스킨은 각 저작자가 라이센스를 정할 수 있습니다.
- 플랫폼 : PHP
목차
CentOS에 XE 1.7.3.4 설치
CentOS에서 XE 1.7.3.4를 설치 합니다.
- 사전 준비 사항
- MySQL 설치
- Apache HTTP Server 설치
- PHP 설치
- Xpress Engine을 다운로드하여 원하는 위치에 놓고 압축을 풉니다.
unzip xe.1.7.3.4.ko.zip mv xe board chown -R apache:apache board
- http://~/board 사이트로 접속하여 설치를 합니다.
오류 : ERR_CONTENT_DECODING_FAILED
- 오류 메시지 : 330 오류(net::ERR_CONTENT_DECODING_FAILED): 알 수 없는 오류
- 임시 조치 방법
- vi classes/display/DisplayHandler.class.php
//extension_loaded('zlib') && extension_loaded('gzip') &&
설치 가이드
Xpress Engine은 1999년부터 개발되어 온 제로보드(ZeroBoard)로 부터 시작하여 지금은 게시판 영역을 넘어 ECM(Enterprise Content Management)로 발전한 오픈소스 이다.
제로보드 (1999년) |
고영수(zero)개발자가 개발한 게시판 소프트웨어인 제로보드는 4.1 버전까지 업데이트 되며 기존의 게시판 소프트웨어에 비해 강력한 기능을 보유한 국내 게시판 소프트웨어의 대명사가 되었습니다. 지금도 많은 사용자가 제로보드 4를 이용하고 있습니다. |
제로보드 XE (2008년 2월) |
제로보드 XE(zbxe)는 기존의 제로보드를 업그레이드한 것이 아닌, 기획부터 구현까지 완전히 새로 만든 소프트웨어 입니다. 게시판 뿐만 아니라 다양한 종류의 웹 사이트를 제작할 수 있는 프레임워크, 자유/오픈 소스 소프트웨어로 나아가기 위한 큰 변화의 시작이었습니다. |
Xpress Engine (2008년 11월) |
XpressEngine이라는 새로운 이름으로 명칭을 변경하면서 개인의 다양성과 콘텐츠의 안정성, 이동성에 더욱 중점을 두었습니다. 제로보드 XE의 '보드(게시판)'라는 단어가 갖는 한계를 벗어나 감정과 생각 등의 생산, 발행, 유통을 도와주는 자유/오픈 소스 소프트웨어가 되고자 하는 의지를 담았습니다. |
설치전 사전 준비 사항
- MySql Tools for 5.0 설치
- phpMyAdmin 설치 (옵션 사항으로 필요시 설치)
- PHP에 GD 확장팩 설치
- PHP에 GetText 확장팩 설치
- PHP에 IMAP 확장팩 설치
- PHP에 mysql, mysqli 확장팩 설치
- 주의 사항 및 추가 준비 사항
- MySQL 4.1 이상 지원
- PHP 4.x와 PHP 5.x 지원, 단 5.2.2는 PHP 자체에 버그가 있음
- PHP에 iconv 확장팩 설치
- PHP에 XML 라이브러리 설치
XE용 DB 설정
- MySQL에 Xpress Engine에서 사용할 Schmea를 등록한다.
- MySQL Administrator에 root 관리자로 로그인 한다.
- 좌측 상단 창에서 "Catalogs"를 선택한다.
- 좌측 하단의 "Schemata" 창에서 우측 마우스를 누른다.
- "Create New Schema" 메뉴를 선택하여 Schema를 생성한다.
- Schema 생성화면에서 "Schema name"으로 "xedb"를 입력한다.
- MySQL에 Xpress Engine에서 사용할 사용자를 등록한다.
- 좌측 상단 창에서 "User Administration"을 선택한다.
- 좌측 하단의 "Users Accounts" 창에서 우측 마우스를 누른다.
- "Add new user" 메뉴를 선택하여 사용자를 생성한다.
- "User Information" 탭에서 "MySQL User"("xe"), "Password", "Confirm Password" 등을 등록한다.
- MySQL에 Xpress Engine에서 사용할 사용자의 권한을 설정한다.
- "Schema Privileges" 탭에서 사용자가 사용할 Schema("xedb")를 선택한다.
- "Available Privileges"의 모든 권한을 "Assigned Privileges"로 이동한다.
- "Apply changes" 버튼을 눌려 등록된 정보를 저장한다.
- MySQL Query Browser에 접속한다.
- 사용자의 MySQL 데이터베이스 접속 정보를 추가한다.
- 우측의 "Schemata" 탭에서 "mysql"을 더블 클릭하여 선택한다.
- grant all privileges on xedb.* to xe@localhost identified by '암호'; (사용자에게 Schmea에 대한 권한을 추가)
- flush privileges; (위 명령을 통해 설정한 권한을 데이터베이스에 반영)
- select host, user, password from user order by user, host; (사용자의 접속 정보 확인)
-
- MySQL Query Browser가 아니라 DOS 창에서 접속 정보를 추가하는 방법
mysql -uroot -pxxx mysql grant all privileges on xedb.* to xe@localhost identified by '암호'; flush privileges; select host, user, password from user order by user, host; exit
XE 설치
- %APACHE_HOME%/conf/httpd.conf 파일에 XE 관련 정보를 추가하고 Apache를 재기동 한다.
- Windows Vista의 경우 관리자로 실행하여 수정 한다.
- Ubuntu의 경우 "AllowOverride None"이 아니라 "AllowOverride All"로 설정해야 rewrite 모듈이 정상 동작 한다.
<Directory /> Options FollowSymLinks AllowOverride All # Order deny,allow (이 라인을 주석으로 막는다) # Deny from all (이 라인을 주석으로 막는다) </Directory> ###----------------------------------------------- ### XE 설정, Document Root가 d:/www 일 경우 Alias /xe d:/www/xe <Directory "/xe"> Order allow,deny Allow from all </Directory>
- 다운로드 사이트에서 "xe.1.3.1.2.zip"를 다운로드 한다.
- xe.1.3.1.2.zip 파일의 압축을 풀어 d:/www/xe 디렉토리에 복사한다.
- d:/www/xe 폴더는 Apache HTTP Server에서 읽기, 쓰기 권한이 있어야 한다.
- http://www.jopenbusiness.com/xe/로 접속하여 초기 설정을 한다.
- 화면이 표시되지 않고 컨텐츠 인코딩 오류가 발생할 경우
330 오류(net::ERR_CONTENT_DECODING_FAILED): 알 수 없는 오류
- vi classes/display/DisplayHandler.class.php 에서 다음을 추가 한다.
function printContent(&$oModule) //--- 함수에서 $this->gz_enabled = false; //--- 이 라인을 추가 한다. if($this->gz_enabled) header("Content-Encoding: gzip"); //--- 이 라인 위에
- "한국어"를 선택하고 "라이센스에 동의합니다"를 눌러 다음 진행을 합니다.
- 필수 설치 조건을 확인하고 "설치를 진행합니다"를 누른다.
- 관리자 화면에서 "쉬운 설치"를 위해 사용할 FTP 접속 정보를 등록 한다.
- 필요한 정보를 입력한 후 "FTP 접속 확인" 버튼을 눌러 설정 값이 정상적으로 입력 되었는지 확인 한다.
- "무시" 버튼을 누르면 이 설정을 하지 않고 건너 뛰는데 향후 관리자 화면의 "Settings" 화면에서 설정할 수 있다.
- "mysql innodb"를 선택하고 "설치를 진행합니다"를 누른다.
- DB와 관리자 정보를 입력하고 "등록" 버튼을 누른다.
- mysql_innodb
- DB 호스트네밍 : localhost
- DB Port : 3306
- DB 아이디 : xe
- DB 비밀번호 : 암호를 입력할 것
- DB 데이터베이스 : xedb
- 테이블 머릿말 : xe (하나의 서버에 여러개의 XE 설치시 구분자)
- 관리자정보
- 아이디 : admin
- 비밀번호 : admin의 암호로 사용할 것을 입력할 것
- 이름 : 관리자
- 닉네임 : 관리자
- 이메일 주소 : 관리자의 이메일 주소
- 환경 설정
- rewrite mod 사용 : 선택
- time zone : [GMT +09:00] Korea Standard Time, Japan Standard Time, China Standard Time
- mysql_innodb
- 설치가 완료 되면 http://localhost/xe/?module=admin 으로 로그인 하여 관리자 설정을 한다.
설치 후 설정 확인
- rewrite mod가 정상 동작하지 않을 경우
- 오류 현상
http://호스트/xe/?module=admin 으로 접속하면 페이지가 정상적으로 뜨나 http://호스트/xe/admin 으로 접속할 경우 404 (웹 페이지를 찾을 수 없습니다) 오류가 발생 한다.
- 확인 사항
- Apache HTTP Server에 rewrite 모듈이 설치 되었는지 확인 한다.
- Apache HTTP Server 설정 파일에서 AllowOverride를 None이 아니라 All로 변경 한다.
<Directory /> AllowOverride All </Directory>
- Xpress Engine이 설치된 폴더에 .htaccess 파일이 있는지 확인 한다.
- http://호스트/xe/?module=admin 으로 접속하여 "Setting" 메뉴에서 "rewrite mod 사용" 체크 되어 있는지 확인 한다.
- "쉬운 설치"에서 폴더 생성 권한이 없다는 메시지가 나올 경우
- 우측 상단의 "Settings" 메뉴을 선택 한다.
- "설치된 XE의 FTP 경로 설정"에서 /var/www/xe/ 처럼 끝이 /로 끝이 나도록 등록 한다.
XE 환경 설정
XE 초기 설정
- XE 관리자로 로그인 합니다.
- XE 시스템의 기본 설정을 합니다.
- "Settings -> 설정"에서 다음과 같이 설정 합니다.
- 짧은 주소 사용 : 선택
- Language : 한국어
- 표준 시간대 : [GMT +09:00] Korea Standard Time, Japan Standard
- 모바일 뷰 사용 : 선택
- "Settings -> FTP 계정 정보 입력"에서 다음과 같이 설정 합니다.
- 아이디 : FTP 아이디를 입력 하세요.
- 비밀번호 : FTP 아이디에 해당하는 비밀번호를 입력 하세요.
- FTP 서버 주소 : XE가 설치된 서버 주소를 입력 하세요.
- FTP Port : 21
- FTP Passive mode : 선택
- 설치된 XE의 FTP 경로 설정 : XE가 설치된 절대 경로를 입력 하세요.
- XE를 사용할 사용자를 등록 합니다.
- "회원 관리 -> 회원 관리 -> 생성"에서 XE를 사용할 사용자를 생성 합니다.
- 예) 아이디: user01, 소속 그룹: 정회원
- XE에서 사용할 메뉴를 등록 합니다.
- "사이트 설정 -> 메뉴 -> 생성"을 선택하여 메뉴을 생성 합니다.
- 제목 : "사이트 메뉴"
- XE에서 사용할 레이아웃을 등록 합니다.
- "사이트 설정 -> 레이아웃 -> 다운로드 목록"에서 "XE 공식 사이트 레이아웃 (xe_official)"에 있는 "생성" 버튼을 선택 합니다.
- 제목 : "XE 공식 사이트 레이아웃"
- 홈 페이지 URL : XE의 홈 페이지 URL을 입력 한다. (예, http://www.jopenbusiness.com/xe/)
- 상단 메뉴 : 위에서 생성한 "사이트 메뉴"를 선택 합니다.
- "서비스 관리 -> 페이지 -> 생성"을 선택하여 home 페이지를 생성 합니다.
- 모듈 이름 : home
- 레이아웃 : "XE 공식 사이트 레이아웃 (xe_official)"
- 모바일 뷰 사용 : 선택
- 모바일 레이아웃 : "XE 공식 사이트 모바일 레이아웃 (default)"
- 메뉴에 home 페이지를 추가 합니다.
- "사이트 설정 -> 메뉴"에서 위에서 생성한 "사이트 메뉴"를 수정 합니다.
- 메뉴 트리에서 "+" 버튼을 눌러 메뉴를 추가 합니다.
- 메뉴명 : 홈
- 연결 url : home
- 설정에서 XE의 홈 페이지를 지정 합니다.
- "Settings -> 설정"에서 시작 모듈을 home으로 선택 합니다.
기본 설치 프로그램
- 모듈
- SocialXE 클라이언트 모듈 ver. 1.0.6
- SocialXE 서버 모듈 ver. 1.0.8
- 게시판 EX ver. 0.5.9
- nLucene 모듈 ver. 1.2
- PXE 게시판 ver. 0.5.6
- 자료실 - Resources ver. 1.1.1
- 지식인XE ver. 1.1.2
- Textyle ver. 1.3.1
- 글감 모듈 ver. 1.0
- Project XE ver. 1.0.2
- IssueTracker ver. 1.1.0
- WikiXE ver. 1.1.0
- 주변 지도 모듈 ver. 0.2
- NAVER Analytics ver. 0.2.1
- 출석부 모듈 ver. 1.5.16
- 애드온
- 요약 책갈피 SNS Bookmarker ver. 1.1.2
- QRCODE 애드온 ver. 0.2
- 태그 연관글 출력(tag_relation) ver. 1.3
- Facebook Social plugin Addon - Like button ver. 0.1
- 위젯
- Sitemap 위젯 ver. 0.1.0
- PlannerXE123 (위젯 버전) ver. 3.3.0
- 최근 글 위젯 (카테고리) ver. 0.1
- NAVER Analytics Widget ver. 0.1
- 에디터컴포넌트
- 지도 글쓰기 도구(구글맵 사용) ver. 0.3.5
- 단락에디터컴포넌트
- 모듈 스킨
- 문하우스 게시판스킨 ver. 3.0
- 위젯 스킨
- 플래쉬 회전하는 태그 위젯 SmallFont ver. 1.2
- xeHome - 공지/웹진형 ver. 0.1
- 문하우스 MH통합게시판위젯 ver. 2.0
- 로그인 정보 출력 - XGENESIS Official Skin ver. 0.1.0
- 위젯 스타일
- Elkha - Gray Widget Style ver. 1.2.1
- 레이아웃 스킨
- 엑스돔 레이아웃 v2 ver. 2.5.2.4
- Elkha - Sky2 ver. 1.4.5
- Crom iXE 레이아웃 ver. 1.0.3
- 에디터 스타일
SocialXE 설정
- SocialXE에서 사용하기 위해 게시판을 생성 합니다.
- "게시판 EX -> 게시판 EX 관리 -> 게시판 생성"에서 모듈 이름을 "SocialBoard"로 등록하고 게시판을 생성 합니다.
- "게시판 EX -> 게시판 EX 관리 -> 게시판 목록"에서 SocialBoard의 수정 버튼을 선택 합니다.
- 모든 권한 설정에서 "특정 그룹 사용자"를 선택하고 "관리그룹"을 체크 합니다.
- http://localhost/xe/?mid=SocialBoard 로 접속해서 "쓰기" 버튼을 눌러 SocialXE를 위한 임의의 글을 등록 합니다.
- 등록후 URL에서 문서 번호를 확인하고 기억 합니다. (예, document_srl=73)
- SocialXE에서 사용하기 위해 페이지를 생성 합니다.
- "제어판 -> 서비스 관리 -> 페이지 -> 생성"을 선택하여 페이지를 생성 합니다.
- 모듈 이름: social
- 생성된 페이지에 SocialXE 기능을 추가 합니다.
- http://localhost/xe/?mid=social 페이지에서 "페이지 수정" 버튼을 선택 합니다.
- "SocialXE 댓글"을 선택한 후 "추가" 버튼을 누릅니다.
- 댓글이 등록될 문서번호: 게시판 등록시 생성한 문서의 번호를 여기에 입력 합니다.
- 소셜 서비스에 등록될 제목: Social
- 소셜 서비스에 등록될 주소: http://localhost/xe/?mid=social
- 한번에 보여질 댓글 개수: 10
NAVER Analytics 설정
- Naver Analytics 사이트에서API Key를 발급 받습니다.
- "Settings -> 부가 기능 설정 -> Naver Analytics"에서 "API Key 정보"를 등록 합니다.
- 처음 Naver Analytics를 적용할때, 데이터가 없어서 오류가 나면서 화면이 보이지 않을 경우
- vi /var/www/html/xe/widgets/analytics_flash_counter/analytics_flash_counter.class.php
//--- if 문을 추가하여 foreach문을 감싸 안아 줍니다. if ($response_obj != null) { foreach($response_obj as $key => $va $aXML_data[] = 'id="'.preg_replace('/-/', , $val->day->body).'" cnt="'.$val->visit_count->body.'"'; } }
- 참고 문헌
관리자 가이드
XE 폴더 구조
XE Core |
if ($oModuleHandler->init()) { $oModule = &$oModuleHandler->procModule(); $oModuleHandler->displayContent($oModule); } |
모듈 |
|
애드온 |
|
위젯 |
<img src="" widget="위젯이름" 속성="값" ... /> |
에디터컴포넌트 | |
단락에디터컴포넌트 | |
모듈 스킨 | |
위젯 스킨 |
|
위젯 스타일 |
|
레이아웃 스킨 |
|
에디터 스타일 |
JOSSO 적용
- 로그인 처리
- 로그아웃 처리
오류시 조치 사항
- 330, ERR_CONTENT_DECODING_FAILED
- gz 압축 전송 옵션을 끈다.
- vi config/config.inc.php
if(!defined('__OB_GZHANDLER_ENABLE__')) define('__OB_GZHANDLER_ENABLE__', 0);
개발자 가이드
위젯 만들기
- 위 "XE 폴더 구조"에서 설명한 구조로 위젯을 만들어 서버에 올려 두면 바로 사용할 수 있습니다.
- 참고 문헌