ZServer Installation -------------------- Requirements ZServer comes with Zope 2. Though ZServer can be used with earlier versions of Zope, this is not supported and not covered by this document. Configuration To run ZServer you simply execute the z2.py start script which is located in your Zope directory. You can pass commandline arguments to the start script in order to run Zope with different options. In order to see a list of options use the '-h' help option. Here's an example of use:: $ python1.5.2 z2.py -w 8888 -f "" -p "" -m "" & This example starts Zope using a web server on port 8888. It does not start and FTP server, or a PCGI server, or a Monitor server. It also starts the server running in the backaground. Shell scripts and batch files You may also wish to create a shell script (or batch file under win32) to set environment variables (such as ZOPE_DEBUG_MODE and PYTHONHOME) and run the start script. Here's an example shell script for a binary Zope release:: ZOPE_DEBUG_MODE=1 export ZOPE_DEBUG_MODE PYTHONHOME=/home/Zope export PYTHONHOME /home/Zope/bin/python /home/Zope/z2.py -w 9673 & Note: If ZServer fails because it can't find some standard Python libaries there's a good bet that you need to set the PYTHONHOME as shown above. Here's an example batch file:: set ZOPE_DEBUG_MODE=1 "\Program Files\Zope\bin\python" "\Program Files\Zope\z2.py -w 8888 -f 8021" Now you're ready to go. Starting ZServer To start ZServer run the start script:: $ python1.5.2 z2.py To stop the server type 'control-c'. Note: If you've created a shell script or batch file to run ZServer use that instead. You should see some Medusa information come up on the screen as Zope starts. A log file will be written to the 'var' directory, named 'Z2.log' by default. Using ZServer Once you start ZServer is will publish Zope (or any Python module) on HTTP and/or FTP. To access Zope via HTTP point your browser at the server like so:: http://www.example.com:9673/ This assumes that you have chosen to put HTTP on port 9673 and that you are publishing a module named whose URL prefix is set to ''. Note: to publish Zope normally you publish the 'lib/python/Zope.py' module. To access Zope via FTP you need to FTP to it at the port you set FTP to run on. For example:: ftp www.example.com 9221 This opens a FTP session to your machine on port 9221, ZServer's default FTP port. When you are prompted to log in you should supply a Zope username and password. (Probably you should use an account with the 'Manager' role, unless you have configured Zope to allow FTP access to the 'Anonymous' role.) You can also enter 'anonymous' and any password for anonymous FTP access. Once you have logged in you can start issuing normal FTP commands. Right now ZServer supports most basic FTP commands. Note: When you log in your working directory is set to '/'. If you do not have FTP permissions in this directory, you will need to 'cd' to a directory where you have permissions before you can do anything. See above for more information about logging into FTP. Advanced Usage: zdaemon.py and the Zope NT service. One problem you may notice with ZServer is that once the server is shutdown, either through the web management interface, or by some other means, it will not automatically be restarted. On Unix you can use zdeamon.py to keep Zope running. Specifying the '-Z' switch when starting Zope runs zdaemon.py. Zdeamon will restart Zope when it Zope is restarted through the web, and in case of an unexpected error. On NT, use the Zope service for the same functionality. See ZServer.py for more information on running ZServer as a service. Where to go from here Check out the README.txt file. It contains information on what ZServer can do, how it works and and what you can do if you run into problems. And don't forget to have fun!