安装ZOPE3 难度 新手 技能 你应该知道如何使用你的操作系统的命令行(对于windows发布版,已经提供了安装程序。) 你需要知道如何在你的系统上成功的安装最新的Python。 问题/任务 在我们能在Zope3上面开发任何东西之前,我们当然需要先安装它。 解决方案 需求 Zope3通常需要最新的稳定版的Python。对于Zope X3 3.3.0发布版来说,使用Python 2.3.4或者更高的。需要注意的是,你应该总是使用最新的修正错误的发布版。Zope3并不需要你安装或激活任何特殊的包;使用最普通的Python即可。这最大的好处就是你可以在你喜欢的操作系统上使用预先打包的Python发行版。(例如:PRM,deb,windows安装程序) 唯一需要注意的是编译Zope3的C模块的时候必须使用与编译Python时使用的编译器一样。例如,你在Windows上安装了由Visual C++ 7编译的Python标准版,就不能使用Cygwin来编译你的Zope 3的模块。然而,问题并不会像看上去那么严重。Zope3的二进制分发版总是使用与Python标准版一样的编译器编译的。另一方面,如果你想自己编译所有的内容,那么一定要使用一个编译器。 在Unix/Linux上最好的选择是gcc。所有的Zope3开发者都使用gcc,所以它总是被支持的。在windows上,像上面提到的那样,标准Python分发版使用Visual C++ 7编译的。因此,Zope3的windows二进制发布版也是使用那个编译器编译的。不管怎么说,人们已经成功得利用Cygwin(和Python一起发布的)来使用gcc了。最后,你还能在MacOS X上运行Zope3。 从SVN安装 为了从SVN中检出Zope3,你需要有一个SVN客户端安装在你的系统上。如果你没有SVN帐户,用户你可以使用佚名的用户来得到一个沙箱检出: svn co svn://svn.zope.org/repos/main/Zope3/trunk Zope3 检出完成后,进入Zope3的目录: cd Zope3 从那里运行make(你需要有安装过make,它应该所有提到的环境中有效)。如果你的Python可执行文件不是叫Python2.3和/或者你的Python二进制文件不在PATH中,编辑Makefile的第一行,改正Python二进制文件的路径。现在运行make,它将建立/编译Zope3: make 将sample_principals.zcml的内容复制到principals.zcml中,并增加一个有管理员权限的用户,如下: 1 <principal 2 id="zope.userid" title="User Name Title" 3 login="username" password="passwd" /> 4 5 <grant role="zope.Manager" principal="zope.userid" /> 行2:注意你没有必要将"zope."作为你的principal id的一部分,但是principal id必须包含至少一个点("."),因为这是有效id的标志。 行3:登录(login)和口令(password)字符串可以是任何的任意值,但是必须可以正确编码为XML。 行5:如果你没有使用默认的安全策略,你可能不能使用zope:grant指令,因为它可能不支持角色。然而你使用普通的Zope3检出,那么作为默认角色是生效的。 此外,在开发的过程中你经常不需要担心安全问题。 这样的话你可以将管理员角色分配给任何人: 1 <grant role="zope.Manager" principal="zope.anybody" /> 原始的应用服务器配置在zope.conf中。如果zope .conf不存在,那么将使用zope.conf.in来替代。在这个文件中你可以定义你想激活的服务器的类型和端口,设置ZODB存储器类型和指定日志选项。配置文件有很好的文档并且它应该很易于修改。 现在我们准备第一次启动Zope3: ./bin/runzope 以下的输出本文将呈现: ------ 2003-06-02T20:09:13 INFO PublisherHTTPServer zope.server.http (HTTP) started. Hostname: localhost Port: 8080 ------ 2003-06-02T20:09:13 INFO PublisherFTPServer zope.server.ftp started. Hostname: localhost Port: 8021 ------ 2003-06-02T20:09:13 INFO root Startup time: 5.447 sec real, 5.190 sec CPU 当Zope启动后,你现在可以通过在你的浏览器中键入以下的URL来测试:http://localhost:8080/。测试FTP使用FTP://username@localhost:8021/。并且甚至可以在Konqueror里使用webdav://localhost:8080/来测试WebDAV。 一个XML-RPC服务器也默认内建在里面了,但是大多数的对象并不支持任何的XML-RPC方法,因此你还不能立刻测试它。参见"经由XML-RPC的可用性"章节来获得详细的指引,关于如何使用XML-RPC服务器。 安装源代码分发版 解压缩包 Zope3最新的发行版可以在http://www.Zope.org/Products/ZopeX3找到。首先,通过点击对应所有地平台的文件来下载最新的Zope3发行版,例如ZopeX3-VERSION.tgz。使用tar或者WinZip来解压档案;例如: tar xzf ZopeX3-3.0.0.tgz 建立Zope 对于这个发行版我们提供了著名的"configure"/"make"程序。所以你可以通过实用下面的语句启动配置过程: ./configure 如果你希望将二进制文件放到除了/usr/local/ZopeX3-VERSION以外的地方,你可以象往常一样指定--prefix选项。同样,如果你的Python安装在非标准的位置,你可以用下面的语句指定Python可执行文件: --with-python 一个完整的配置语句可以是: ./configure --prefix=/opt/Zope3 --with-python=/opt/puython2.3/bin/python2.3 立即返回的输出是: Using Python interpreter at /opt/puython2.3/bin/python2.3 Configuring Zope X3 installation 既然源已经配置好了,我们可以用make来建立它了。打入make命令。只有一行: python2.3 install.py -q build 返回并且硬盘驱动器将忙碌几分钟来编译源代码。当命令行返回后,你可以使用下面的命令运行测试: make check 在这里,单元测试和功能测试将被执行。对于每个执行的测试你将看到屏幕上出现一个"点"。检测将持续5-10分钟,这依赖你的电脑的速度和硬盘的剩余空间(free cycles:空闲的柱面)。 最终的输出将如下所示: Python2.3 install.py -q build Python2.3 test.py -v Running UNIT tests at level 1 Running UNIT tests from /path/to/ZopeX3-VERSION/build/lib.linux-i686-2.3 [some 4000+ dots] ---------------------------------------------------------------------- Ran 3896 tests in 696.647s OK 测试的确切数量将依赖于Zope的版本,操作系统和主机平台。如果最后一行显示"OK ",你就知道所有的测试都通过了。当校验过检测后,你可以使用make install来安装这个分发版了。 创建一个Zope实例 当安装完成后,Zope将存在在你在--prefix指定的目录中或者在/usr/local/ZopeX3-VERSION下面。 然而,Zope还不能运行,因为你还没有创建创建一个实例。实例是用于下面这种情况的:当想利用相同的基本软件配置来做多个基于Zope的站点时。创建一个新实例是容易的。 进入Zope3目录并输入以下命令: /bin/mkzopeinstance -u username:password -d path/to/instance 这将在path/to/instance 路径下面创建一个Zope实例。一个有登录"用户名"和登录"口令"的用户将被创建,同时将"zope.manager"角色分配给它。刚创建的实例的所有配置在path/to/instance/etc目录下。请检查在那里面的所有信息以保证它适合你的需要。 运行Zope 在实例目录中通过调用下面的命令来执行Zope。 ./bin/runzope 启动输出的内容将和从SVN安装的Zope一模一样。 所有的事情都完成了。当服务器启动并运行后,你可以使用你喜爱的浏览器来测试它,就像之前提到的那样。 在Windows上采用非MAKE方式安装源代码分发版 在Windows上也可以不使用make来安装源代码分发版。 然而,你需要一个支持C的编译器以来建立包。 如果你没有安装C编译器或者Cygwin,那么请使用Windows安装程序来安装Zope3。 更多详情请看下一节。 在安装Zope3之前,你需要安装Python 2.3.4或者更高的版本。 在Windows NT/2000/XP上.py扩展名的文件自动的关联到Python可执行文件,因此运行一个脚本时你不需要指定Python可执行文件。 解压分发版之后,进入该目录。 用下面的语句建立: install.py -q build 当建立过程完成后,你可以用下面的命令运行测试: test.py -v 它将给出与在Un*x/Linux下相同的输出。 当测试校验成功后,用以下的安装分发版: install.py -q install 你现在完成Zope3的安装了。 接着进行前面章节的最后一步--创建一个实例并启动Zope。 注意:这样的安装zope3使得它很难被卸载,因为你必须手工地从许多个位置上,包括Python的Lib\site-packages\和Scripts\目录,删除文件/目录,以及完全的删除zopeskel\目录。 如果你使用Windows安装程序来代替,那么一个反安装程序将被提供并被注册到控制面板的"添加/删除程序"中。 安装二进制分发版 当前我们对于Windows仅仅提供二进制的发行版。这些发行版假定你已经安装了标准Windows Python发行版。Windows二进制的发行版是一个可执行文件,它将自动的执行安装程序。只要简单遵循屏幕上的安装向导,Zope3即可安装成功。你可以随后使用控制面板的"添加/删除程序"来卸载Zope3。