Building and installing Zope from source
This document describes building and installing Zope on Unix. We will provide Windows instructions in later releases. We will also provide binary releases for some platforms.
ZOPE 2.0 REQUIRES PYTHON 1.5.2!
See CHANGES.txt for important notes on Zope 2.0.
Important notes
If you are impatient, the following commands should get you up and running with Zope 2 using ZServer and ZODB 3 on Unix:
python w_pcgi.py # Note, this must be Python 1.5.2 ./start
The first command builds and adjusts Zope. Take note of the user name and password output at the end of this command. You will need these to manage Zope.
If you get errors indicating that addresses are in use, then you will have to supply arguments to z2.py to change the ports used for HTTP or FTP. The default HTTP and FTP ports used by ZServer are 8080 and 8021 respectively. (See the help for the z2.py script by running z2.py with the -h option for more information on how to specify different ports)
You can then connect to Zope 2 by directing your browser to:
http://yourhost:8080/manage
where yourhost is the name or address of the machine running Zope 2. If you changed the HTTP port with the -w option to z2.py, then use it rather than 8080.
You will be prompted for a user name and password. Use the user name and password output above.
Now you're off and running! You should be looking at the Zope management screen which is divided into two frames. On the left you can navigate between Zope object and on the right you can edit them by selecting different management functions with the tabs at the top of the frame.
If you haven't used Zope before, you should head to the Zope web site and read some documentation. The Zope Manager's Guide is a good place to start. You can access the Zope site at:
http://www.zope.org/
Have fun!
Quick Start
There are some python scripts in the top-level directory that should help you get started. You must run these scripts from the top-level directory.
If you want to try out Zope in the simplest fashion using ZServer, then run the script wo_pcgi:
python wo_pcgi.py
If you want to use PCGI and an existing web server run w_pcgi:
python w_pcgi.py
Notes
- You should be using Python 1.5.2 to run the build scripts.
- The python you run Zope with must have threads compiled in,
which is not the case for a vanilla build. When you build the
python you'll use,
configure --with-threads
does the right thing. - To build python extensions you need to have Python configuration information available. If your Python comes from an RPM you may need the python-devel package installed too. If you built Python from source all the configuration information should already be there.
- If you just want to use Zope components it's not necessary to build Zope but it's a good idea since it will compile Python C extensions for you.
- You can use PCGI and an existing web server if you use ZServer.
Building Zope
See the WEBSERVERS.txt file for more information about configuring Zope with an existing web server.
Starting Zope with an existing web server
There are two ways to run Zope:
- You can use ZServer, the integration of Zope and Medusa. You must
use ZServer if you want to use multiple concurrent threads.
ZServer is a server application that supports multiple protocols:
- HTTP -- ZServer is a Web server
- FTP -- ZServer is a file-transfer protocol server. This allows you to use FTP-enabled publishing systems with Zope.
- PCGI -- PCGI is a lightweight protocol for forwarding requests from other web servers, like Apache or Netscape, to Zope. This makes it possible to use web server features like connection encryption or logging with Zope.
- monitor -- ZServer has the capability to allow you to access
the Python interpreter directly over a network channel. If
you intend to use this, please read the
DEBUGGING.txt
document for more information.
With ZServer, you must start Zope manually using the z2.py script. Typically, the command used to run the z2.py script will be put in system startup scripts.
ZServer is the prefered way to run Zope.
- If you only want to use PCGI and you don't need multi-threaded operation, you can have a special program, the pcgi_publisger, start Zope for you. See the WEBSERVER.txt file for details on using Zope with an existing webserver.
If you wish to enable Zope logging you must specify options on the command line. See LOGGING.txt in the doc directory.
Running Zope