Zope 的安裝配置

發表于:2007-06-11來源:作者:點擊數: 標簽:
核心 zope 安裝 假定安裝過程中使用的是 root 用戶。 獲取軟件包的當前可用的穩定版本: python 2.1.3: http://www.python.org/ftp/python/2.1.3/Python-2.1.3.tgz zope 2.6.2: http://zope.org/Products/Zope/2.6.2/Zope-2.6.2-src.tgz Zope 的當前版本需要

核心 zope 安裝

假定安裝過程中使用的是 root 用戶。

獲取軟件包的當前可用的穩定版本:

  • python 2.1.3: http://www.python.org/ftp/python/2.1.3/Python-2.1.3.tgz
  • zope 2.6.2: http://zope.org/Products/Zope/2.6.2/Zope-2.6.2-src.tgz

Zope 的當前版本需要與 python 2.1 一起工作,不能與系統自帶的更高的版本系列一起工作,并且需要啟用多線程配置。

tar -zxvf Python-2.1*.tgz
cd Python-2.1*
./configure --with-threads
make
make install

python 2.1 被安裝到 /usr/local/bin 下面,在安裝與 Zope 有關的所有軟件包的時候,凡是執行 python setup_script.py 的命令行都需要改為 python2.1 setup_script.py,確保相應的模塊被安裝到 /usr/local/lib/python2.1 下面。

假定把 Zope 安裝到 /usr/local/Zope 目錄下。

tar -zxvf Zope-2.6.2.tgz
mv Zope-2.6.2 /usr/local/Zope
cd /usr/local/Zope
make

記住屏幕上顯示的初始用戶的名字 admin 和隨機生成的口令,可以在用這個口令登錄到 Zope 的 web 管理界面時更改口令,或現在就執行下面的命令行來更改 admin 用戶的口令:

python2.1 zpasswd.py inituser

Zope 的安裝完成,下面做的是進一步的定制。

useradd zope
chown -R root /usr/local/Zope
chmod o+t var
mkdir var/gadfly
mkdir var/gadfly/demo
mkdir var/mnt
chown -R zope var/* 

Zope 的控制腳本有兩個 start,stop。編輯一個可以放置到 /etc/init.d 中的 zope 控制腳本:

if [ $# -ne 1 ]; then
echo need one argrument: start, stop or restart
exit 1
fi
ZOPE_HOME=/usr/local/Zope
case $@ in
start)${ZOPE_HOME}/start -u zope & ;;
stop)${ZOPE_HOME}/stop ;;
restart)${ZOPE_HOME}/stop ; ${ZOPE_HOME}/start -u zope & ;;
esac

啟動 Zope:

./zope start

用瀏覽器訪問 http://localhost:8080/??梢砸姷揭粋€ Zope Quick Start 頁面,其中有指向 The Zope Book 和例子的連接,其中 Zope Management Interface 連接指向 Zope 管理界面,也可以直接用 http://localhost:8080/manage 訪問。從其他機器上訪問,把這里的 localhost 替換為實際的域名或 IP。

到此就可以讀教程,熟悉一下 Zope 的使用然后繼續安裝。

本地化和內容管理構件的安裝

下面繼續安裝 CMF 和 plone, 為了顯示中文還需要安裝本地化包和翻譯包,獲取軟件包的當前可用的穩定版本:

  • zope CMF 1.3.3: http://cmf.zope.org/download/CMF-1.3.3/CMF-1.3.3.tar.gz
  • plone 1.0.5: http://prdownloads.sourceforge.net/plone/CMFPlone1.0.5.tar.gz?download
  • Localizer 1.0.1: http://prdownloads.sourceforge.net/lleu/Localizer-1.0.1.tgz?download
  • TranslationService 0.4: http://zope.org/Members/efge/TranslationService/0.4/TranslationService-0.4.tgz

plone 需要與 zope CMF 1.3 一起工作。安裝 CMF:

tar -zxvf CMF-1.3.3.tar.gz
mv CMF-1.3.3 /usr/local/Zope/CMF
cd /usr/local/Zope/CMF

編輯一個 run 文件:

INSTANCE_HOME=/usr/local/Zope
SOFTWARE_HOME=/usr/local/Zope/lib/python

ln -s ${INSTANCE_HOME}/CMF/CMFCore ${SOFTWARE_HOME}/Products/CMFCore
ln -s ${INSTANCE_HOME}/CMF/CMFDefault ${SOFTWARE_HOME}/Products/CMFDefault
ln -s ${INSTANCE_HOME}/CMF/CMFTopic ${SOFTWARE_HOME}/Products/CMFTopic
ln -s ${INSTANCE_HOME}/CMF/CMFCalendar ${SOFTWARE_HOME}/Products/CMFCalendar

運行這個 run 腳本完成 CMF 的安裝。

安裝 plone:

tar -zxvf CMFPlone1.0.5.tar.gz
mv CMFPlone-1.0.5 /usr/local/Zope/CMFPlone
cd /usr/local/Zope/CMFPlone

編輯一個 run 文件:

INSTANCE_HOME=/usr/local/Zope
SOFTWARE_HOME=/usr/local/Zope/lib/python

ln -s ${INSTANCE_HOME}/CMFPlone/CMFPlone ${SOFTWARE_HOME}/Products/CMFPlone
ln -s ${INSTANCE_HOME}/CMFPlone/i18n ${SOFTWARE_HOME}/Products/i18n
ln -s ${INSTANCE_HOME}/CMFPlone/Formulator ${SOFTWARE_HOME}/Products/Formulator
ln -s ${INSTANCE_HOME}/CMFPlone/DCWorkflow ${SOFTWARE_HOME}/Products/DCWorkflow

運行這個 run 腳本完成 plone 的安裝。

安裝完產品(構件)之后,需要重新啟動 Zope 使之生效。

登入 Zope 的 web 管理界面,增加一個 Plone Site,就有了一個現成的內容管理系統了。

安裝 Localizer 和 TranslationService 包:

tar -zxvf Localizer-1.0.1.tgz
mv Localizer /usr/local/Zope/lib/python/Products
tar -zxvf TranslationService-0.4.tgz
mv TranslationService /usr/local/Zope/lib/python/Products

后續配置參見 http://www.plone.org/development/i18n/howto 即可。

與 apache 的連接

假定 Apache 2.0.* 安裝在 /usr/local/apache 目錄下。

獲取 mod_fastcgi 模塊:

  •   mod_fastcgi 2.4.0 :http://www.fastcgi.com/dist/mod_fastcgi-2.4.0.tar.gz

開始安裝:

tar -zxvf mod_fastcgi-*.tar.gz
cd mod_fastcgi-*
cp Makefile.AP2 Makefile
make top_dir=/usr/local/apache
make install

編輯 Apache 配置文件 /usr/local/apache/conf/httpd.conf,增加如下內容:

LoadModule fastcgi_module     modules/mod_fastcgi.so

FastCgiExternalServer /usr/local/apache/htdocs/zope \
-socket zope.soc \
-pass-header Authorization

<Location /zope>
SetHandler fastcgi-script
</Location>

編輯 Zope 的啟動文件 /usr/local/Zope/start, 更改啟動 ZServer 的選項。

exec /usr/local/bin/python2.1 $cwd/z2.py -f - -w - -F /usr/local/apache/logs/fastcgi/zope.soc -D "$@"

停止對 8080 和 8021 端口的監聽,啟用 fastcgi 連接。

重新啟動 Apache 和 Zope。對 Zope 的訪問變為 http://localhost/zope。

與 PostgreSQL 的連接

假定 PostgreSQL 安裝在 /usr/local/pgsql 目錄下PostgresSQL 的源文件在 /usr/local/src/postgres-7.* 目錄下。

獲取下列軟件包:

  • mxDateTime 2.0.5 : http://www.egenix.com/files/python/egenix-mx-base-2.0.5.tar.gz
  • psycopg 1.1.10 : http://initd.org/pub/software/psycopg/psycopg-1.1.10.tar.gz

mxDateTime 為 python 提供對數據庫的日期時間類型的處理。

tar -zxvf egenix-mx-base-*.gz
cd egenix-mx-base-*
python2.1 setup.py install

psycopg 是 python 訪問 PostgreSQL 數據庫的適配器,軟件包中還帶有 ZPsycopgDA,它是 Zope 訪問 PostgreSQL 數據庫的適配器。

確保安裝了 PostgreSQL 的全部頭文件:

cd /usr/local/src/postgresql-*
make install-all-headers

確??梢哉业絼討B庫文件 libpq.so,如果它不在 /lib /usr/lib 下,則需要編輯 /etc/ld.so.conf。增加一行

/usr/local/pgsql/lib

執行命令使之生效。

ldconfig 

開始安裝 psycopg:

tar -zxvf psycopg-*.gz
cd psycopg-*

編輯一個 run 文件。

./configure --with-python=/usr/local/bin/python2.1 \
            --with-zope=/usr/local/Zope \
            --with-mxdatetime-includes=/usr/local/lib/python2.1/site-packages/mx/DateTime/mxDateTime \
            --with-postgres-includes=/usr/local/pgsql/include \
            --with-postgres-libraries=/usr/local/pgsql/lib
make
make install
make install-zope

執行這個 run 文件完成 psycopg 的安裝。

ZODB 到關系數據庫的映射

獲取下列軟件包:

  • DBTab 1.2.1 : http://hathaway.freezope.org/Software/DBTab/DBTab-1.2.1.tar.gz
  • Ape 0.7.1 : http://hathaway.freezope.org/Software/Ape/Ape-0.7.1.tar.gz

DBTab 使用配置文件來設置數據庫連接。使用它可以掛裝多個數據庫。

tar -zxvf DBTab-*.gz
mv DBTab /usr/local/Zope/lib/python/Products
cd /usr/local/Zope/lib/python/Products/DBTab

編輯一個 run 文件

SOFTWARE_HOME=/usr/local/Zope/lib/python
INSTANCE_HOME=/usr/local/Zope

ln -s ${SOFTWARE_HOME}/DBTab/custom_zodb.py ${INSTANCE_HOME}/custom_zodb.py
cp ${SOFTWARE_HOME}/DBTab/dbtab.conf.in ${INSTANCE_HOME}/dbtab.conf

運行這個文件完成 DBTab 的安裝。

Ape 把 Zope 對象存儲到文件系統或關系數據數據庫中。

tar -zxvf Ape-0.7*.gz
mv Ape /usr/local/Zope/lib/python/Products

建立存儲 ZODB 對象的關系數據庫和操縱它的用戶,授權這個用戶能建立數據庫、不能建立用戶:

su postgres
createuser -A -d -P zope
createdb -U zope zodb
exit

按 Ape 的 README.txt 文件的說明編輯 /usr/local/Zope/dbtab.conf:

[Storage: Main]
type=FileStorage
file_name=%(CLIENT_HOME)s/Data.fs

[Database: Main]
mount_paths=/


[Storage: FS]
type=apelib.zodb3.storage.ApeStorage
factory=apelib.zope2.mapper.createFSMapper
basepath=%(CLIENT_HOME)s/mnt

[Database: FS]
class=apelib.zodb3.db.ApeDB
cache_size=0
mount_paths=/fs
container_class=OFS.Folder.Folder

[Storage: PostgreSQL]
type=apelib.zodb3.storage.ApeStorage
factory=apelib.zope2.mapper.createSQLMapper
module_name=psycopg
params= dbname=zodb user=zope password=XXXXXX

[Database: PostgreSQL]
class=apelib.zodb3.db.ApeDB
mount_paths=/pg

重啟 Zope,進入 Zope 的 web 管理界面,增加“DBTab Mount Point”, 把 PostgreSQL 數據庫掛裝到 /pg 上。

到此在 http://localhost/zope/pg 下的所有對象都會保存到 PostgreSQL 數據庫中。



原文轉自:http://www.anti-gravitydesign.com

...
国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97