· KLDP.org · KLDP.net · KLDP Wiki · KLDP BBS ·
Plone

Plone 2.5.2 설치하기

시작하는말: 여러가지의 CMS를 검토하던중 가장 마음에 드는 Plone.org 그러나 소스로 부터 이것을 설치하는것은 (나에게는) 쉬운일이 아니었다. 물론 윈도우즈용 설치 exe는 쉽게 설치된다. 상용 OS인 윈도우즈에 많은 신경을 쓴듯~ 리눅스용으로 Package를 만들어 둔것도 있는데 이것은 서버/client1/client2 까지 이상한 셋업니다. 그래서 그냥 소스에서 한번 설치및 간단한 운영에 대해 이야기 하고자 한다. 혹 경험자들은 본인의 의견을 추가 해 주세요.

설치하기


Python 2.4.4

Python 이 설치 되어 있으면 버전을 확인한다.

pangaea:/opt/pust/log# python         
Python 2.4.4 (#1, Jan 24 2007, 10:19:07) 
[GCC 3.3.5 (Debian 1:3.3.5-13)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> 

버전이 다르면 2.4.4 를 설치하기를 권한다. python.org 에가서 해당 버전을 다운후 표준으로 ./configure;make;make install

Zope 2.9.5

이것은 Plone 2.5.2 가 원하는 버전이다. 최신 Zope 3 은 Plone 2.5.2에서 지원이 안된다고 한다. (왜 그런지는 모르겠다).

http://www.zope.org/Products/Zope/2.9.5 에서 tar.gz 를 다운받은 다음
tar xvfz Zope-2.9.5-final.tgz
cd Zope-2.9.5-final
./configure

이렇게 하면
pangaea:/home/hunkim/down/Zope-2.9.5-final# ./configure 

Configuring Zope installation

Testing for an acceptable Python interpreter...

Python version 2.4.4 found at /usr/local/bin/python
Python version 2.4.4 found at /usr/local/bin/python2.4

No suitable Python version found. You should install
Python version 2.4.3 before continuing.
Versions 2.4.2 also work, but not as optimally.

이런! Python 2.4.3을 설치하라는데 http://www.python.org/download/을 본결과 (2007년 1월 24일 현재) Python 2.4.3 은 없다. 2.4.4만 있는데 없는 이유가 있으니 그냥 2.4.4로 밀어 붙이자.

Zope안에 있는 configure 라는 파일을 열면 15줄정도에 다음이 나온다.
# Place the optimal target version number for Zope (as returned by sys.version)
# below
TARGET="2.4.3"

TARGET을 2.4.4로 고친다음 configure;make;make install

그런다음 {Zope 설치디렉토리}/bin/mkzopeinstance.py 을 실행시키면 Zope의 인스턴트 (하나의 서버)를 만들 디렉토리를 물어 보고 관리자 아이디와 비밀번호를 물어 보는데 답하면 된다. 필자의 경우 /opt/hunkim 을 인스턴트 디렉토리로 지정하였다.

그러면 Zope이 돌아기는지 인스턴트 디렉토리를 확인한다.

cd /opt/hunkim/bin
./zopectl start

이때 에러가 발생하면 /opt/hunkim/etc/zope.conf 를 고쳐야 한다. 필자의 경우 effective-user zope 를 추가 하고 (zope 이라는 사용자 추가후) /opt/hunkim 의 주인을 zope 으로 바꾸어 주었다.

그런다음 http://hunkim:8080/manage 로 접속하면 지정한 Admin 아이디와 비밀번호를 물어 온다. 화면이 정상적으로 나타나면 잘된것이다. 이상하다면 /opt/hunkim/logs의 파일을 보고 필요한 부분을 알아서 고쳐 주심된다. :-)

Python 추가 모듈

Plone 을 위해 다음의 추가 모듈이 필요하다.

다운 받은후
tar xvfz Imaging-1.1.6.tar.gz
cd Imaging-1.1.6
python setup.py install

다운 받은후
tar xvfz elementtree-1.2.6-20050316.tar.gz
cd elementtree-1.2.6-20050316
python setup.py install

Plone 2.5.2 의 설치

그럼 Plone을 설치할 준비완료! http://plone.googlecode.com/files/Plone-2.5.2-1.tar.gz (또는 최신 버전을 http://plone.org/products/plone) 에서 다운 받은다음

tar xvfz Plone-2.5.2-1.tar.gz
cd Plone-2.5.2-1
ls
total 168
drwxr-sr-x  41 zope root 4096 Jan 24 22:36 .
drwxr-xr-x   9 zope root 4096 Jan 24 22:36 ..
drwxr-xr-x  19 zope root 4096 Jan 24 22:46 ATContentTypes
drwxr-xr-x   4 zope root 4096 Jan 24 22:36 ATReferenceBrowserWidget
drwxr-xr-x  14 zope root 4096 Jan 24 22:36 Archetypes
drwxr-xr-x   8 zope root 4096 Jan 24 22:46 CMFActionIcons
drwxr-xr-x   8 zope root 4096 Jan 24 22:36 CMFCalendar
drwxr-xr-x  11 zope root 4096 Jan 24 22:36 CMFCore
drwxr-xr-x  13 zope root 4096 Jan 24 22:36 CMFDefault
drwxr-xr-x   6 zope root 4096 Jan 24 22:45 CMFDynamicViewFTI
drwxr-xr-x   8 zope root 4096 Jan 24 22:36 CMFFormController
drwxr-xr-x  11 zope root 4096 Jan 24 22:46 CMFPlacefulWorkflow
...

여기에 있는 디렉토리들을 원하는 인스턴터 (/opt/hunkim) Products 디렉토리에 복사하면 된다.

mv * /opt/hunkim/Producs
chown -R zope /opt/hunkim/Products

그러면 자동으로 Plone이 설치 된것이다. 설치를 반영하기 위해 Zope를 새로 시작한다.

/opt/hunkim/bin/zopectl stop
/opt/hunkim/bin/zopectl stop

그런다음 다시 웹으로 zope 관리자 모드 (http://hunkim:8080/manage)로 들어간다.


와 같은 화면이 보일텐데 Root Folder에서 드랍다운되는 리스트중에 "Plone Site"를 추가 (Add)하면 된다. 이때 사이트 아이디(plone)랑 몇가지를 물어 본다.

혹 Plone Site 가 리스트에서 보이지 않으면 /opt/hunkim/log 에 있는 파일을 보기 바란다.

그런후 사이트 아이디가(plone) 새로운 Plone의 주소가 된다.

Plone 추가 모듈


플론을 완전히 사용하기 위해 몇가지 추가해주면 좋을 Plug-in들을 소개 한다.

설치방법은 압축을 풀게 되면 보통 하나의 디렉토리가 나타나는데 이를 인스턴스(/opt/hunkim)의 Products 에 디렉토리 전체를 복사하면 된다.

그런후 Zope를 다시 시작한다음 Plone의 제어판으로 들어가서 프로그램을 설치하면 된다.

Plone Wotkflow 수정

Plone은 CMS(Content Management System)이다. 즉 어던 사용자가 글을 올리면 리뷰어가 이것을 보고 수정하고 출판(Publish)를 결정하게 된다. 그럼 누가 글을 올리고 리뷰를 하고 어떤과정을 이것을 진행할것인가? 이것을 결정하는 것이 바로 Workflow 이다.

기본적으로 사용자는 그냥 글을 올리고(드래프트) 리뷰어가 글을 읽고 출판을 할 수 있도록 하는데 이것이 우리정서랑은 잘 안맞을 수도 있다. 그냥 모든 사람이 올리는 글이 바로 출판이 되고 필요시 리뷰어나 관리자가 글을 수정하는 (위키 같은 방법으로) 한번 Workflow를 바꾸어 보자.

예상하듯이 이것은 조금 복잡하다. 우선 제어판/조프 관리자 인터페이스로 가자.


그런다음 Portal Workflow선택


텝에서 Content를 선택하신 다음 기존에 있는 plone_workflow 를 복사해서 수정하도록 한다.


복사한다음 이름을 원하느대로 바꾸고 (simple_workflow) 해당 Workflow를 선택한다. 이 상태에서 States를 선택하면 여러가지가 나오는데 우리는 Published와 private만 남기고 모두 삭제한다. Upload new Attachment "plone_portal_workflow_state.png" or paste a new png picture

그리고 published가 디폴트가 되도록 이를 선택한 다음 "Set Initial States" 를 선택한다.

그런다음 published 선택하여 가능한 상태를 오직 hide만 가능하도록 고친다. Upload new Attachment "plone_portal_workflow_published_state.png" or paste a new png picture

그럼 이제 우리가 원하는 workflow가 만들어 졌고 이를 각 컨텐터에 맞게 반영하면 된다.

다시 portal_workflow에 오면 가가 컨텐트 타입에 따라 workflow를 지정할 수 있는데 우선 대부분을 (Default)로 지정을 하고 제일 아래 기본 Workflow를 우리가 만든 simple_workflow로 고치면 된다. 그리고 Change 아래에 있는 "Update security settings" 도 한번 눌러 준다.


그럼 자신의 Plone 사이트에 가서 글을 올려 보시라. 아마 기본적으로 Publish 되고 만약 이를 내리고 싶다면 Private로 만들수 있게 된다.







인터라넷으로 Plone 사용하기

기본적으로 Plone에 올라온 글은 모든 사람이 볼 수 있게 된다. 얼마나 오픈소스 적인가? 그러나 가끔은 Plone을 이용해 멤버 전용의 서비스를 이용하고 싶을때가 있다. 아래 글은 다음을 참조하였다. http://plone.org/documentation/how-to/creating-private-plone-site


우선 사용자 가입을 막는다. 오직 관리자나 초대에 의해서만 가입이 되도록 한다.

우선 Zope 관리자 모드에서 Security를 선택한다음 Add Portal Memebr를 관리자만 되도록 설정 (Acquire를 uncheck) 한다. 그러면 초기 화면에서 가입을 위한 링크가 없어진다.

추후 추가 예정

ID
Password
Join
"Perl is executable line noise, Python is executable pseudo-code."


sponsored by andamiro
sponsored by cdnetworks
sponsored by HP

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2007-02-10 00:52:29
Processing time 0.0098 sec