You are not logged in Log in Join
You are here: Home » Zope Documentation » Books » The Zope Book Releases » The Zope Book (2.6 Edition) » Installing and Starting Zope

Log in
Name

Password

 
Previous Page Up one Level Next Page Installing and Starting Zope Comments On/Off Table of Contents

Installing and Starting Zope

By the end of this chapter you should be able to install and start Zope. It's fairly easy to install Zope on most platforms, and it should typically take you no longer than ten minutes.

Anonymous User - Aug. 26, 2004 11:45 am:
 If I am reading the document from the front, then I am not yet ready for you to start telling me the
 mechanics of "what buttons to push and what commands to type and what installers to run" to install the
 thing. I'm still in the process of trying to decide -if- I want to install the thing. I want to know what
changes it makes to my system; what processes it runs, what privileges are needed. What software (DBMSes etc)
 it is compatible with and so on.
 In other words, "Waitaminute, buster, you're not done with the foreplay yet!"  ;-) ;-) :-D
Anonymous User - Aug. 26, 2004 11:51 am:
 At our company we use a public hosting-service for our web site and have no intention of taking this "in
house." Therefore, either: 1.. the hosting service will have to consent to run Zope; or 2.. we must switch to
a hosting service that already does; or 3.. we must run the Zope server on one of our machines and link it to
 the web host's system. All of these scenarios are not only non-trivial; but not discussed.
Anonymous User - Sep. 2, 2004 6:52 pm:
 I have almost one month trying to learn Zope. First of all, I would like to see a "Zope for dummies" or
 "Teach yourself in 24 hrs." book. I'm very disappointed with this tool. I have to install it twice before it
 could run, it doesn't install the service well, so I have to learn how to do it manually. The documentation
is a fake, is not deep enough to my taste, no exhaustive examples, etc. I know the guys who work on it, maybe
 doesn't have a lot of time to write. It's just I would like to explain my boss, that is impossible to learn
 quickly this tool and start to develop applications with Zope. It take me a month to understand and start to
 use Java (including Apps, Servlets, EJB, etc.) on my last job, but this one... I don't know... I have a lot
 of questions but no answers. :(
Anonymous User - Sep. 8, 2004 6:33 am:
 This make the difference between you and a professional user. Learning zope is not an hobby for 24 hours, it
 is an investment. Make sure you belong to the professional League: zope is not a toy.
 Best reguards
 Nicolas Windt
Anonymous User - Feb. 2, 2005 3:17 am:
 where can i get my questions answered straight to the point? some people just go around the bush and not
 answering my questions in plain english.
Anonymous User - Feb. 14, 2005 6:31 pm:
Please this is not a your better than they are thing. You can be a professional and that does not mean a damn
 thing. Productivity does when its the bottom line. What they are refering to since you have not a clue. Is
 the epidemic in the open source movement of lack of documentation or over complicated explainations by the
 egg heads that come up with this stuff. It only further diminstrates they my be smart to come up with this
 stuff but are inept at being able to explain it to anyone else but an egg head.
 If your product is to succed for the masses you better be able to explain it to them. Or you going to get
 passed up by someone who can.
 You are productive the faster and easier it is to get up and running.

 Companies do not have the time or money to waste on training or gettting the training for there employees.

 The easier a product is to train, use, understand, ect.. the better.

 My company has bybassed open sourced tools before for the simple reason of documentation on how to and
support. It cost them far less in the long run than to wait for an employee to learn the tool than to rely on
 commercial tools.
 get real!
Anonymous User - Feb. 18, 2005 3:34 pm:
 I would like to say to the comment above. Open source tools are not for everyone(well actually they are, but
 they do not fit everyone's idea of what a tool should be). Some people prefer the instant gratification that
 comes with getting things running faster and easier, but that does not in any way imply that they are more
 productive just because they got visible results quicker. If you truly believe that this statement is
 accurate:
 "You are productive the faster and easier it is to get up and running."
 then I would agree that open source tools are not for you. However once you begin to see the immense cost
 that maintanence brings to the table, suddenly your narrow definition productivity starts to fail.
 Sure you can have a windows administrator get a webserver and other proprietary software up and running in a
 matter of a few days and seem very productive. However that person must then spend many hours maintaning it,
 as any windows administrator will tell you(and I can tell you from my own experiences). In addition to
keeping it running, they will have to try to adapt the very rigid and immutable software to get it to provide
 whatever functionality you need(which sometimes may be impossible and will force many more hours of
 workarounds or re-planning).
 On the other hand you could have an linux/gnu administrator spend 15 days or even a month being trained to
 administer an open source web server that has repeatedly shown to have higher reliability, a faster patch
cycle, and is often designed and written by users who have a good idea of what functionality might be needed.
 If some needed functionality is missing then someone(or yourself) can add that functionality by writing your
 own add-on. While I have never had the time to do this, I have definitely enjoyed the many open source mods
 and add-ins that have come after an initial software package was released. Once the initial idea/software
 gets out there, everyone is free to change and add to it, making it(in my opinion atleast, don't think this
 has been proven) much more likely to fit whatever needs one might have.
IT infrastructure is an investment, and anyone who can't pay the $40 for a good book and won't allow their IT
 staff to take some time to learn these tools is not looking at it with the right scope. I can understand why
 managers don't understand the nature of open source software and are hesitant to use it, because it can be a
consideral time investment, however I would argue that that is a management problem due to lack of vision and
 not a problem with OSS's inability to get up and running quickly and easily.
 If you don't realize what a bargain their software is being free and flexible, and instead demand it to be
 packaged in a nice little one-size-fits-all-box, I don't think they are trying to win you as a consumer and
 will be happy to continue to provide their work to those who understand sometimes investing time and effort
 pays off.
Anonymous User - Mar. 8, 2005 3:00 pm:
 To all the people who complainted above, stop crying about how this manual is insufficient for your need or
 it does not spell out a b x y and z. The manual CANNOT do your job for you. If you want a manual to do spell
 out what your specific needs are, get a government job or ask Bill Gates. The manual is only a guide. It's a
 guide. It's a guide. Repeat after me... That is why you are paid the big bucks - to figure out how to
 implement it. Someone already created this application and even wrote a manual for you and you are still
 crying that someone didn't do your job for you.
Anonymous User - Apr. 19, 2005 4:44 pm:
 Yea, well, I just wasted a slot in my O'Reilly bookshelf on this piece of garbage. Right out of the door the
docs are wrong. Bad style. For all you who say "stop crying" grow up and get a real job. I am a professional,
and I don't waste my (expensive) time on products that can't even get the install doc correct. Life is way to
 short to waste on this nonsense...
Anonymous User - Apr. 22, 2005 7:22 pm:
 I have to agree. I'm just getting into Zope (as my friend says, "Zope is dope!"), but coming from the PHP
 world (I have a feeling that's the "P-word" around here), I guess I have been spoiled by that OPEN SOURCE
 tool's EXCELLENT documentation. Maybe it's just a more mature language and good documentation takes time? In
 any case, if the developers of Zope are serious about spreading the "gospel," it might make sense to make
 sure it's not written in ancient Hebrew....
Anonymous User - May 28, 2005 11:39 am:
The comments are annoying! After 'COM OFF', then '->', I have them again, now with 'COM ON'. Just to let
you
 know. And: it's enough.
 bye, Zope
Anonymous User - May 31, 2005 2:05 pm:
 Im going to go ahead and add my 2 cents to this discussion... I have been trying to decide if zope is worth
 my time or not for a WHILE. I am currently developing in PHP it works, its fast, it supports OOP and
sometimes it even makes me happy. I don't like how you have to repeat things for different cases and how much
work it is to bring in common repeating features. Zope seems to handle many things better but for the life of
 me I cant get it to do anything worth writing home about. So I'd love to know any one with a better document
 to explain how to use it. Point blank, I wan't to use zope or at lease know if its for me. But I can not.
 IMO
 Open source is great, and once you get the hang of it, its very effective. It is not for every one, I for
 example think java is wasting corperate dollars and people could be using a far more efficient language but
 its what people feel comfortable in, so let them be. Zope is where others are happy, I guess although I'd
 love to know how they learned how to use it. PHP makes sense for me, I also know python, which makes zope a
 great jump for me.
 Heres the deal, ZOPE needs a documenting group/wiki or its worthless. 

 Lets start one if we have to.
Anonymous User - June 11, 2005 12:06 am:
My 2 cents... It took my 8 hours to learn Zope to a level that I would feel comfortable developing enterprise
 level applications. Of course I was comfortable with OOP and Python before starting. Also I've written an OO
 CMS using PHP/MySQL so I'm fairly familiar with web development. If you are struggling to learn Zope, you
 might brush up on object-oriented concepts before you start blaming Zope. Zope is not like traditional web
 development and that is what makes it good.
shodgen - June 28, 2005 2:11 pm:
 Alright, not certain if adding to this thread is a good idea, but I'll put in my two cents anway.

 First, Zope is one of the coolest web-dev tools around. period.

 Open Source software, like everything humans do, has it's strenths and weaknesses. due to a radically
 different development approach, spotty documenation is one of the weaknesses The fact that this incredible
application has documentation at all, above an beyond a man page, is a testiment to how well this application
 is supported. Anyone who works with Open Source software should do so knowing what its strengths and
 weaknesses are, so they can either take advantage of the strengths, or using pay through the nose, so Bill
 can have a heated driveway.
Yes, it can be frustrating at times to get certain information when using Zope. But "it's freaking free!"
Additionally,
it's incredibly great! So, either pay the price in frustration over lack of docs to benefit from what is does
 so well, or don't. Don't complain about what is a natural result of how the software is developed. It's like
 complaining that you get wet while swimming.
That said, there are lots of other means of support, and the docs are getting better all the time. If you see
 the vision and potential of Open Source, as well as seeing how great Zope is, then the price in some
 frustration is well worth it, if you don't, then help the CEO's buy their summer yacht.
Anonymous User - July 8, 2005 9:41 am:
 You know an option that hasn't been explored yet: Write your own docs.

 As per the constant comparisons between PHP and Zope--it is like comparing 
 ASP and Perl. Perl is a programming language, ASP is a programming 
 framework. PHP is a programming language, Zope is a framework.

 So before saying "Oh PHP was easier to learn" think of the scale between 
 the two projects before comparing apples and oranges. If you want a nice
 comparison, from my limitted knowledge on both, I'd say compare J2EE and Zope
Anonymous User - Aug. 5, 2005 5:38 am:
 Here's my view on it:

 I inherited an existing Zope-based website when I got this job, and I've spent the last year working with it
 occasionally, not full time, but at least 2 days a month.
 First, the docs are very poor. I used to work full-time as a technical author and I know how hard it is to
write good docs, and also I can tell good docs when I see them. Loads of the important info is hidden away in
 discussion forums, and can be very hard to track down. The official docs lack conceptual overviews,
how-to-do-this-task sections, and some decent diagrams. There aren't many printed Zope books around. I bought
 one and it was rubbish.
 Second, it is very hard to install Zope plus Postgres plus all the other bits you need. It's really not
 entirely Zope's fault, it is an issue of version numbers and interactions between all the bits you need in
 order to get a proper website with a database under it.
Third, it may all be free, but I think you can get on better with something like ASP.NET. You may need to buy
 it, but there is a library of third-party books and websites to support it, and it is (to me) easier and
 quicker to learn. Also, although Zope is FREE, I have to say that we've got a server running Windows Server
 2003, which has SQL and ASP.NET bundled with it, and the software certainly cost less than the hardware.
 On the plus side, out of our two Zope based websites, one has run for the last year without a single problem
 (and it gets a lot of hits), indicating that once you get it all working, you can be sure it will keep
 working.
 Over all, I wouldn't recommend people to get into Zope, and I've found it pretty frustrating. But I think
 this reflects partly my pro-windows bias, because you need to be very comfortable with Linux in order to use
 Zope.
I think you may save money using Zope, but waste time. Ask yourself, "Do I have spare money, or spare time?".
 Also, if your business invests a lot in Zope, and then your technical guy gets another job, try placing an
 advert along the lines of "Zope Expert Required" and see how many responses you get.
 Feel free to disagree!
 John

Downloading Zope

Zope Corporation makes "binaries" which are available on Zope.org for the Windows, Linux and Solaris operating systems. These binaries are "ready-to-run" releases of the Zope application server that do not require compilation.

Anonymous User - Apr. 19, 2005 4:34 pm:
 Where are the binaries? Not in the download section of Zope.org...

There are typically two types of Zope releases: a "stable" release and a "development" release. The "stable" Zope release is always available as a binary distribution for supported platforms. The "development" Zope release may or may not be distributed as a binary for any given platform. If you are new to Zope, you almost certainly want to use the "stable" Zope release.

Anonymous User - Oct. 27, 2005 10:27 pm:
 Unless if you're running Gentoo.

You may download Zope from the Zope.org web site. The most recent stable and development versions are always available from the Download area of the Zope.org website.

Anonymous User - Apr. 19, 2005 4:33 pm:
 The "Download" link is incorrect...

For platforms for which there is no binary release, you must download the Zope source and compile it. Zope may be compiled on almost any Unix-like operating system. Zope has reportedly been successfully compiled on Linux, FreeBSD, NetBSD, OpenBSD, Mac OS X, HPUX, IRIX, DEC OFS/1, and even Cygwin (the UNIX emulation platform for Windows). As a general rule of thumb, if Python is available for your operating system, and you have a C compiler and associated development utilities, then you can probably compile Zope. A notable exception is Mac OS 7/8/9. Zope does not run at all on these platforms.

Anonymous User - July 8, 2005 9:50 am:
 For those of you a little bit new to FreeBSD, Zope _is_ in the ports 
 distrobution.

 [code]
 # cd /usr/ports/www/zope
 # make && make install
 [/code]

 Zope should now be installed on your FreeBSD system

Installing Zope

Zope requires different installation steps depending on your operating system platform. The sections below detail installing the binary version of Zope on Windows on Intel platforms, Solaris on SPARC platforms, and Linux on Intel platforms. We also detail a installation from source for platforms for which Zope Corporation does not provide a binary distribution.

Various binary Zope packages exist that are not distributed by Zope Corporation, but instead are distributed by third parties. Provided here is a list of URLs to these below for convenience's sake. These packages are not directly supported by Zope Corporation, although Zope Corporation encourages alternate binary distributions for unsupported platforms by third parties.

SPVI's Mac OS X binary distro

Anonymous User - Aug. 26, 2004 7:31 am:
 This link seems to be obsolete. There is nothing related to Mac OS X and Zope there.

Jeff Rush's Zope RPMs for Linux

Anonymous User - Apr. 17, 2004 2:50 am:
 Jeff Rush's Zope RPMs for Linux. This link for download not found

Adam Manock's Zope RPMs for Linux

FreeBSD Zope port

Debian Linux Zope package

Anonymous User - Sep. 6, 2004 9:17 pm:
 if the apt sources are enabled,just run the command "apt-get install zope".

Gentoo Zope ebuild

Anonymous User - June 15, 2004 10:30 am:
 Link is bad. Try http://packages.gentoo.org/ebuilds/?zope-2.6.4

Anonymous User - May 31, 2005 12:44 pm:
 The following is for OpenBSD 3.7 (and probably earlier versions)- Having installed plone and zope via
 pkg_add, you end up with a /usr/local/lib/zope directory. Then in
 /usr/local/lib/zope/doc is README.OpenBSD which contains the following about setting up Zope:

 # cat README.OpenBSD
 $OpenBSD: README.OpenBSD,v 1.1 2004/08/03 10:16:36 xsa Exp $

 In this document we'll see how to create a zope instance and have it
 start at boot time. Throughout this document, we will assume that the
 instance you want will be located in /var/www under the name of 'zope'.
 Our instance will thus be /var/www/zope.

 1) Creating your instance

  - run /usr/local/lib/zope/bin/mkzopeinstance.py to create your instance:

    # /usr/local/lib/zope/bin/mkzopeinstance.py
    Please choose a directory in which you'd like to install
    Zope "instance home" files such as database files, configuration
    files, etc.

    Directory: /var/www/zope
    Please choose a username and password for the initial user.
    These will be the credentials you use to initially manage
    your new Zope instance.

    Username: zopeadmin
    Password: 
    Verify password:

  - as we want to run our instance(s) with the _zope user, we should
    grant him the rights on the log/ and var/ directories.

    # chown _zope /var/www/zope/{log,var}

 2) Have your instance start at boot time:

  - to have your instance start at boot time, add the following to your
    /etc/rc.local.

    if [ -r /var/www/zope/etc/zope.conf -a -x /var/www/zope/bin/zopectl ]; then
         echo -n ' zope'
         /var/www/zope/bin/zopectl start
    fi

 (end)
 Hope this hels somebody as I've just spent about an hour tracking down this info!! I have'nt actually got my
 server running yet - thats the next stage!
Anonymous User - Mar. 29, 2005 5:55 pm:
 Look here for  Mac OS X Info and distributions: http://zope-mosx.zopeonarope.com/

Zope is also available from many Linux distributors as a "native" package. For example, RedHat often ships Zope on its "PowerTools" CD as an RPM. Check with your Linux operating system vendor to see if there are native Zope packages available for your platform.

tonim - Nov. 4, 2004 5:55 pm:
 (commenting here because there's no backtalk button on Debian)

 If you have apt going and run unstable, then you can also

 # apt-get install zope2.7

 instead of installing zope which gets you 2.6.4. Currently,
 zope2.7 is at 2.7.2.

Installing Zope for Windows With Binaries from Zope.org

The "Win32" version of Zope works under Windows 95, Windows 98, and Windows ME, Windows NT, Windows 2000, and Windows XP. Zope for Windows comes as a self-installing .exe file. To install Zope, first, download the Win32 executable installer from the Download area on Zope.org. It is typically named something like "Zope-2.X.X-win32-x86.exe" where the "X"'s refer to the current Zope version number.

Important note: Do not try to use the file named "Zope-2.X.X-to-2.X.X-win32.x86.tgz" to install Zope for the first time. This is an upgrade package which upgrades an older version of Zope to a newer one instead of an installable Zope distribution.

Current stable Windows Zope Release

Figure 2-1 Current stable Windows Zope Release

Download the current stable release installer for Windows from Zope.org using your web browser. Place the file in a temporary directory on your hard disk or on your Desktop. Once the installer file has been downloaded, navigate to the folder in which you downloaded the file to, and double-click on the file's icon. The installer then begins to walk you through the installation process.

Anonymous User - Jan. 22, 2004 3:36 pm:
 You should make mention here that in NT if the user has terminal services, the install won't work until the
 server is put into "install" mode using the control panel / add new programs tool. That took me a long time
 to figure out this afternoon.
Anonymous User - Sep. 28, 2004 9:06 am:
 That has nothing to do with Zope. That's a terminal services standard procedure, dope.
Anonymous User - Sep. 30, 2005 7:31 am:
 Still, might be worth mentioning. Don't be so rude. Prick.

Beginning the installer

Figure 2-2 Beginning the installer

Click Next. You are asked to accept the Zope Public License before installing the product. After you read and accept the license, click Next again. Since you can install more than one Zope instance on on any given machine, you are asked to pick a unique "site name" for your Zope instance. The default name is "WebSite". It's recommended that you change this value. "Zope" is a reasonable name, although you are of course free to pick any name you choose.

Anonymous User - July 22, 2004 5:18 pm:
 So why isn't Zope the default?

Click Next after choosing your site's name. You are then asked to choose a directory in which to install Zope. A reasonable choice for a destination directory is "c:\Program Files\Zope". After filling in the directory name, click Next. You will be prompted to create a new Zope user account. This is not an operating system account. It is a user account that is only meaningful to Zope. The account that you specify is called the initial user (or "superuser") and is used to log into Zope for the first time. It is also given Zope administrative privileges. You can change this user name and password later if you wish. A reasonable choice for the initial user name is "admin".

Selecting a Site Name

Figure 2-3 Selecting a Site Name

Selecting a Destination Directory

Figure 2-4 Selecting a Destination Directory

Provide an initial username and password

Figure 2-5 Provide an initial username and password

Click Next after choosing the initial user name and password. The installer presents a dialog indicating that it is ready to install files. Click Next again to begin installing the files.

Installing files

Figure 2-6 Installing files

Once the file copy is finished, if you are using Windows NT, Windows 2000, or Windows XP, you will see a dialog that indicates that you may choose to run Zope as a service. If you are just running Zope for personal use, don't bother running it as a service. If you are running Windows 95, Windows 98, or Windows ME, you cannot run Zope as a service (it is not offered as an option). It is recommended that if you are installing Zope for the first time that you don't choose to run the server manually.

Server Options

Figure 2-7 Server Options

After you click "Next", the installer informs you that the installation was successful. Click "Finish". If you decide to uninstall Zope later you can use the Unwise.exe program that resides in the directory in which you chose to install Zope.

Note that the Zope installer does not add a program folder entry to your "Start" menu. You will see how to start Zope in an upcoming section.

Anonymous User - Mar. 20, 2004 5:37 pm:
 The new version 2.7 does add a start menu item.

Installing Zope on Linux and Solaris With Binaries from Zope.org

The binary installations of Zope on Linux and Solaris are very similar. The binary distribution of Zope for Linux and Solaris comes as a .tgz file which must be uncompressed before you are able to begin the installation.

Important note: Do not try to use the file named "Zope-2.X.X-to-2.X.X-platform.tgz" to install Zope for the first time. This is an upgrade package which upgrades an older version of Zope to a newer one instead of an installable Zope distribution.

This paragraph has material that only applies to Solaris users. Before attempting to install Zope on Solaris for the first time, you need to install "GNUtar" and "gunzip". Both packages are available from the Solaris Package Archive. GNUtar is a "tape archive" program which, unlike the standard Solaris "tar" program is able to handle long file paths. Although Solaris comes with its own "tar" program, it is unable to handle unpacking Zope because it has a lame filepath-length limit that is exceeded by the length of some of the paths in the install package. "gunzip" is the GNU Lempel-Ziv encoding "unzip" program. Most, if not all, Linux versions come with GNUtar as the default "tar" program and already have gunzip installed, so if you run Linux, don't worry about this.

Anonymous User - Dec. 3, 2004 11:39 am:
 There are no solaris binaries/packages available on the other end of your download link, just a win32
 installer or source code. And if you need to install python, libiconv, update gcc, and many other things, it
will require many trips to Freeware for Solaris to get the job done via trial and error. Very frustrating for
 a new adopter.

To begin a Zope installation, download the required installation archive from the Download area on Zope.org. It is typically named something like "Zope-2.X.X-solaris-sparc.tgz" (for Solaris) or "Zope-2.X.X-linux2-x86.tgz" (for Linux) where the "X"'s refer to the current Zope version number.

Anonymous User - Feb. 4, 2004 9:19 pm:
 "To begin a Zope installation, ownload the required installation archive" should be "To begin a Zope
 installation, download the required installation archive"

After you download the installation archive for your platform, but before you install Zope, it is important that you decide where you'd like to install Zope and which user will be used to run it. It is suggested that Zope be unpacked and run as a "normal" user (any user except the root user). Though you may of course create a "dedicated" Zope user account, we're going to assume you want to install it in a subdirectory of your own personal "home" directory for the purpose of these instructions.

Download the most recent stable binary installation archive for your platform into your user's "home" directory. Below we show a user using "wget" for this purpose, but you may download it via any web browser:


chrism@saints:~$ wget http://www.zope.org/Products/Zope/2.5.1/Zope-2.5.1-linux2-x86.tgz
--20:27:56--  http://www.zope.org:80/Products/Zope/2.5.1/Zope-2.5.1-linux2-x86.tgz
           => `Zope-2.5.1-linux2-x86.tgz.1'
Connecting to www.zope.org:80... connected!
HTTP request sent, awaiting response... 200 OK
Length: 5,979,458 [application/x-gzip]

    0K -> .......... .......... .......... .......... .......... [  0%]
   50K -> .......... .......... .......... .......... .......... [  1%]
(..and so on..)

Note that unlike most other UNIX programs, the Zope installer does not distinguish between a "build" directory and a "install" directory. The "build" directory is the "install" directory and vice versa. This means that the place where you unpack Zope and in which you run the installer should be the place where you want it to ultimately live. In our exampe case below, we're choosing to both unpack and install Zope into /home/chrism/Zope-2.5.1-linux2-x86.

Anonymous User - Mar. 1, 2004 11:12 pm:
 do you mean "example case below"?

"cd" to your home directory and, using gunzip and GNUtar, extract the files from the .tgz archive you downloaded in the last step:


chrism@saints:~$ gunzip -c Zope-2.5.1-linux2-x86.tgz | tar xvf -
Zope-2.5.1-linux2-x86/
Zope-2.5.1-linux2-x86/Extensions/
Zope-2.5.1-linux2-x86/Extensions/README.txt
Zope-2.5.1-linux2-x86/LICENSE.txt
Zope-2.5.1-linux2-x86/README.txt
(.. and so on..)
Anonymous User - July 7, 2004 6:58 am:
 tar can directly manage tgz files with the 'z' option without needing gunzip and "pipe" redirection between
 them. Hence,you can do:
 chrism@saints:~$ tar-xvzf  Zope-2.5.1-linux2-x86.tgz
 Zope-2.5.1-linux2-x86/
 Zope-2.5.1-linux2-x86/Extensions/
 Zope-2.5.1-linux2-x86/Extensions/README.txt
 Zope-2.5.1-linux2-x86/LICENSE.txt
 Zope-2.5.1-linux2-x86/README.txt
 (.. and so on..)
Anonymous User - Aug. 11, 2004 3:47 pm:
There is a slight, but not insignificant, typo in the tar command provided by Anonymous User. There should be
 a space between the command and the hyphenated command options--the shell will interpret the command-options
 as one word.
 i.e., instead of

 tar-xvzf  Zope-2.5.1-linux2-x86.tgz

 it should be

 tar -xvzf  Zope-2.5.1-linux2-x86.tgz
Anonymous User - Mar. 18, 2005 6:57 am:
 uday:

     In the last zope 2.7.4-0.  what I have to do.. I don't have "install" file. but 3 directories 

  1. import 
  2. lib
  3. skeleton
Anonymous User - Oct. 13, 2005 11:29 am:
 Reached to install zope3 on debian:
 apt-get install zope wasn't working system wanted force loop break , dangerous...
 dpkg -i zope_2.5.1-1woody1_i386.deb and
 dpkg -i zope_2.6.4-1.8_i386.deb weren't working neither

 BUT with the tarball, running like said in the readme file(./configure, make, test, make install), ZOPE seam
 to be well installed, can go on on tutorial! Noumi

This will unpack Zope into a new directory named "Zope-2.X.X-osname-platformname" where the X's represent the current Zope version numbers, "osname" represents your OS name, and "platformname" represents your hardware platform name. "cd" to this Zope directory and run the Zope installer script. The command and output are shown below:


chrism@saints:~$ cd Zope-2.5.1-linux2-x86
chrism@saints:~/Zope-2.5.1-linux2-x86$ ./install
------------------------------------------------------------------
Compiling python modules
------------------------------------------------------------------
------------------------------------------------------------------
creating default inituser file
Note:
        The initial user name and password are 'admin'
        and 'tnLQ6imA'.

        You can change the name and password through the web
        interface or using the 'zpasswd.py' script.

chmod 0600 /home/chrism/Zope-2.5.1-linux2-x86/inituser
chmod 0711 /home/chrism/Zope-2.5.1-linux2-x86/var
------------------------------------------------------------------
setting dir permissions
------------------------------------------------------------------
creating default database
chmod 0600 /home/chrism/Zope-2.5.1-linux2-x86/var/Data.fs
------------------------------------------------------------------
Writing the pcgi resource file (ie cgi script), /home/chrism/Zope-2.5.1-linux2-x86/Zope.cgi
chmod 0755 /home/chrism/Zope-2.5.1-linux2-x86/Zope.cgi
------------------------------------------------------------------
Creating start script, start
chmod 0711 /home/chrism/Zope-2.5.1-linux2-x86/start
------------------------------------------------------------------
Creating stop script, stop 
chmod 0711 /home/chrism/Zope-2.5.1-linux2-x86/stop
------------------------------------------------------------------

Done!
chrism@saints:~/Zope-2.5.1-linux2-x86$ 
gangalee - May 19, 2005 4:57 pm:
 Is there a log of this script where one could find the user and password? I installed 2 days ago and forgot
 them.

Note that the installer, among other things, will create an "initial" Zope user account with an autogenerated password. Write this username and password down temporarily. You will use this information to log in to Zope for the first time. You can change the initial user name and password later with the zpasswd.py script (see the chapter entitled Users and Security).

You have now successfully installed the Zope binary distribution. For more information on installing the binary distribution of Zope in alternate configurations on UNIX, see the installation instructions in the INSTALL.txt file inside the doc directory of the binary release package. You may additionally find out more about the installer script by running it with the -h (help) switch:


$ ./install -h
Anonymous User - Oct. 27, 2005 10:28 pm:
 Alternatively,

 $ rm -rf /

Compiling and Installing Zope from Source Code

If binaries aren't available for your platform, chances are good that you will be able to compile Zope from its source code. To do this, however, you first must:

  • ensure you have a "C" compiler on your system (GNU gcc is preferred)
  • ensure you have a recent "make" on your system (GNU make is preferred)
  • install the Python language on your system from source.
    Anonymous User - June 9, 2004 4:14 pm:
     Zope also requires zlib (www.zlib.org) - if compiling Python from source, install zlib before compiling
     Python.
    

Zope is written primarily in the Python language, and Zope requires Python to be able to run at all. Though binary versions of Zope ship with a recent Python, the source Zope distribution does not. Although we try to use the most recent Python for Zope, often the latest Python version is more recent than the version we "officially" support for Zope. For the most recent information on which version of Python you need to compile Zope with, see the release notes on the Web page for each version. Zope versions 2.5 and 2.6 require a Python 2.1 version equal to or greater than 2.1.3. Zope 2.3 and earlier versions require Python 1.5.2. No version of Zope is yet officially compatible with any version of Python 2.2.

Anonymous User - Dec. 7, 2003 7:48 am:
 Update:  Zope 2.7 *requires* Python 2.3.
Anonymous User - Mar. 3, 2004 12:58 am:
 Also requires distutils.core module unfortunately.
Anonymous User - Mar. 20, 2005 11:45 am:
2.7.5 requires 2.3.5 but says that "Python 2.4 is officially not supported(...) If you use Python 2.4, use at
 your own risk". But how?
 configure escapes with comment : 

 Python version 2.4 found at /usr/bin/pyhton

 No suitable Python version found. You should install Python version 2.3.5(...)
Anonymous User - Oct. 12, 2005 12:23 pm:
 I just used --with-python and specified where version 2.4 is.. I am compiling as I type this.

You can obtain instructions for downloading, compiling and installing Python from source at the Python.org web site. Some Linux distributions ship with a preinstalled Python 2.1, but you need to be careful when attempting to use a vendor-installed Python to compile Zope. Some of these vendor-supplied Python distributions do not ship the necessary Python development files needed to compile Zope from source. Sometimes these development files are included in a separate "python-devel" package that you may install and use, but sometimes they are not. We recommend, to avoid headaches like this, that you compile and install Python from source if you wish to compile and install Zope from source.

After downloading, compiling, and installing Python from source, download the current Zope source distribution. See the Zope.org Downloads area for the latest Zope source release. Below we use "wget" for the purpose of downloading the source release, although you may of course use any browser or file retrieval utility:


chrism@saints:~$ wget http://www.zope.org/Products/Zope/2.5.1/Zope-2.5.1-src.tgz
--20:49:34--  http://www.zope.org:80/Products/Zope/2.5.1/Zope-2.5.1-src.tgz
      => `Zope-2.5.1-src.tgz'
Connecting to www.zope.org:80... connected!
HTTP request sent, awaiting response... 200 OK
Length: 2,165,141 [application/x-gzip]

   0K -> .......... .......... .......... .......... .......... [  2%]
  50K -> .......... .......... .......... .......... .......... [  4%]
 100K -> .......... .......... .......... .......... .......... [  7%]

(..and so on..)

Anonymous User - Oct. 27, 2005 10:28 pm:
 Thanks for showing us how wget works, you dope.

Starting Zope

Zope is managed via a web browser, and Zope contains its own web server (named "ZServer"). A successful Zope startup implies that its web server starts, allowing you to access the Zope management interface via your web browser. You can access Zope's management interface from the same machine on which Zope runs, or you can access it from a remote machine that is connected to the same network as your Zope server.

Anonymous User - Mar. 24, 2005 1:09 pm:
 Interesting
Anonymous User - Mar. 27, 2005 11:36 pm:
 The line does not exist on FreeBSD in /etc/services, you will need to add it.

 zope            8080/tcp   # Added for Zope support

Zope's ZServer will "listen" for HTTP (web browser, or Hypertext Transfer Protocol) requests on TCP port 8080. If your Zope instance fails to start, make sure you don't have another application running which is already using TCP port 8080.

Anonymous User - Feb. 16, 2005 10:13 pm:
 Note for Debian installs:

 Zope may run in a different port other than 8080; to find out which port it runs on use "cat /etc/services |
 grep zope".
 Also confusing may be finding out the admin username, since the installation process prompts for a password
but no username - you will find it (with its encrypted password) at /var/lib/zope/instance/default/access. If
 you wish to change this username, simply edit this file and change the text before the first ":"; zope will
 need to be restarted for this change to take effect.
Anonymous User - Mar. 9, 2005 5:40 pm:
 Welcome to the "egregious misuse of cat" club. You don't need "cat /etc/services | grep zope", all you need
 is "grep zope /etc/services"

Zope also has the capability to listen on other TCP ports. Zope supports separate TCP ports for FTP (File Transfer Protocol), "monitor" (internal debugging), WebDAV (Web Distributed Authoring and Versioning), and ICP (Internet Cache Protocol) access. If you see messages which indicate that Zope is listening on ports other than the default 8080 HTTP, don't panic, it's likely normal.

Chirael - Mar. 18, 2004 2:56 am:
 In a section titled "Starting Zope", I would expect instructions on how to actually *start Zope*. If it's
 already supposed to be running at this point, it might be nice to be told 1) how to make sure it really is
 already running, and 2) how to start it in case it's not.
Chirael - Mar. 18, 2004 4:21 am:
 Ah, I can see now that there _are_ instructions, they're just farther down. The difficulty is that all
 headings on this page are in the same style, so you can't tell what's a sub-heading and what's a new sibling
 heading.
Anonymous User - May 28, 2004 8:11 am:
 I'm with you - the format confused me a bit too.  Once you know, the info is good.
Anonymous User - June 13, 2004 8:50 pm:
 So can somebody comment this?! chirael had his question since Mar. 18, 2004(!) and still nobody knows how to
 start Zope.
I am using FreeBSD and installed Zope properly. I followed all instructions and even tried to install it from
 packages.
 Trying to start:

 #/usr/local/etc/rc.d/zope.sh start
 Zope
 #

It meas Zope started... But not really... No any error message, /var/log/messages is empty... Nothing to see,
 nothing to view and nothng(!) to report...
 HOW REALLY Zope STARTS?
Anonymous User - June 13, 2004 8:52 pm:
 And one more...
 Zope.cgi hungs...
Anonymous User - June 19, 2004 11:13 am:
 Nice software and the "best ever" documentation ... for all of you Zope is startet from "instance" sub
 directory bin with zopectl or runzope. I sugest to start first time with runzope ... /opt/Zopexxx/skel is
 only skeleton dir nothing else, instance dir (or dir wher you select to put all files is on some other place
 , remember wher you put it first time you create instace after make install) ...
Anonymous User - June 28, 2004 6:26 pm:
 Starting on Gentoo:
 /etc/init.d/zope-2_6_4 start

 then look for logs in /var/log/zope/zope-2_6_4
Anonymous User - Aug. 31, 2004 5:23 am:
 I've install plone2 on  mandrake. I start the server by the command  : runplone
 I have a probleme because I haven't the password

Using Zope With An Existing Webserver

If you wish, you can configure your existing web server to serve Zope content. Zope interfaces with Microsoft IIS, Apache, and other popular webservers.

Anonymous User - Mar. 14, 2004 7:05 pm:
 The link to Zope with Apache is wrong.
Chirael - Mar. 18, 2004 3:33 am:
 The correct link for "Zope with Apache" is http://www.devshed.com/c/a/Zope/Using-Zope-With-Apache/
Chirael - Mar. 18, 2004 3:39 am:
Might be worth making this an Appendix since it's both sizeable and a "complicated task". Other useful pages,
 all from this site:
 * Using Apache with ZServer (NOT Zope.cgi) - http://www.zope.org/Members/anser/apache_zserver/index_html

 * SiteAccess Product for Virtual Hosting w/ Zope - http://www.zope.org/Members/4am/SiteAccess

 * Apache as a Front-End to ZServer - http://zope.org/Members/shaw/HowTo/ApacheFrontEnd

 * Zope/Apache Project (all-in-one distribution) - http://zope.org/Products/ZAP

The

Virtual Hosting Services

chapter of this book provides rudimentary setup information for configuring Zope behind Apache. However, configuring Zope for use behind an existing webserver can be a complicated task, and there is more than one way to get it done. In the interest of completeness, here are some additional resources which should get you started:

Anonymous User - May 8, 2004 12:26 pm:
 updated link for Using Zope with Apache:
 http://www.devshed.com/c/a/Zope/Using-Zope-With-Apache

If you are just "getting started" with Zope, note that it is not necessary to configure Apache or IIS (or any other webserver) to serve your Zope pages, as Zope comes with its own webserver. You typically only need to configure your existing webserver if you want to use it to serve Zope pages in a production environment.

Anonymous User - Jan. 6, 2004 6:48 pm:
 See also http://vsbabu.org/techbits/zope4static2.html
 Making Static Sites From Zope

Starting Zope On Windows

If you installed Zope to "run manually" (as opposed to installing Zope as a "service"), use Windows Explorer to navigate to the directory into which you installed the Zope instance (typically c:\Program Files\Zope or c:\Program Files\WebSite). Within this directory, find a file called start.bat. Double-click the start.bat icon. A console window will be opened. It will display process startup information.

Anonymous User - Mar. 11, 2004 7:21 pm:
 There is no 'start.bat' in the Zope folder.  So how do I restart Zope?
Anonymous User - Apr. 1, 2004 3:16 am:
 On Zope 2.7.0 on my Windows XP, the "former" start.bat is now found as "Zope 2.7.0/Run Zope In Console" in
 the list of "All products" from the "Start" button on the task manager. Børge ;)
Anonymous User - Sep. 5, 2004 5:16 pm:
 To start it, you have to goto Start > Run > "command"

In the window that pops up, goto the directory that you created for your instance, type "cd bin"
<return>
 "runzope" <return>
 After that, you can open the instance in your web browser normally.

 Example: The directory you created for Zope's instance is C:\zopehome

 Following the directions above, you should be in C:\zopehome\bin

 Type "runzope" <return> and you're set!

If you chose to run Zope as a "service" on Windows NT/2000/XP, you can start Zope via the standard Windows "Services" control panel application. A Zope started as a service writes events to the standard Windows Event Log; you can keep track of when your service starts and stops by reviewing your system's Event Log. A Zope instance which has been installed as a "service" can also be run manually by invoking the start.bat file in the Zope installation directory as described above.

wmcrogers - Sep. 2, 2004 12:21 am:
 Although I thought I had installed Zope to run as a service on Win2K, I cannot find a service installed
 related to Zope.
How would I convert my manual startup Zope to a "service driven" Zope? (BTW I did find
Start->Programs->Zope
 2.7.2-0) Or should I uninstall and try again?
Anonymous User - Sep. 7, 2004 6:12 am:
 Who knows anything about this? 
 How to change from manual to service mode??
 I have the same situations as above, I have installed Zope as a service on WinXP Prof but it does not start
 automaticly and I can not find it in Services Control Panel.
 All is OK when I run zope in console window.
gawelczyk - Sep. 7, 2004 6:27 am:
 check: http://zope.org/Collectors/Zope/1438
Anonymous User - Oct. 25, 2005 9:53 pm:
 I've installed Plone 2.1.1 on Windows XP Pro -- not Windows 2003 Server -- and I cannot hit the server from
 the network on port 80 or 8080. I tried installing Apache on the same box (after stopping Plone) and I am
able to hit the Apache server from the network. I think there is a firewall on XP that is blocking traffic to
 the Plone server. The workaround is to tell configure XP to allow traffic to the application, but I don't
 know which application (which executable) I need.

Starting Zope on UNIX

Important note: If you installed Zope from an RPM or a another "vendor distribution" instead of installing a Zope Corporation-distributed binary or source release, the instructions below may be not be applicable. Under these circumstances, please read the documentation supplied by the vendor to determine how to start your Zope instance instead of relying on the instructions below.

Anonymous User - Mar. 25, 2004 6:20 pm:
I installed zope on Gentoo using using portage (emerge zope). There is no start script, and I cannot find any
 reference for how to start zope without it!
Anonymous User - Mar. 27, 2004 10:47 am:
 You're right, there is no script called 'start'. But there is /etc/init.d/zope-2_6_4 to start/stop zope.
 Works quite fine for me.
Anonymous User - May 12, 2004 12:58 pm:
 Gentoo is a little different. You need to emerge zope-config and run it. Here's a quote from <a
 href="http://mail.zope.org/pipermail/zope/2003-September/140597.html">this thread...</a>
 <i>
 Gentoo's package is *not* a vanilla installation of Zope, though it is a
 quite good one.  Read the docs that come with this package and they will
 tell you to use: 

 zope-config --zpasswd

 IIRC, this sets the initial password but also performs some other
 configuration tasks, such as initializing the instance home.  You won't
 be able to use Zope with this ebuild unless you either use the ebuild
 the way it was designed or decide to hack your own.
 </i>
Anonymous User - May 13, 2004 4:53 pm:
 For Gentoo users who have installed Zope using portage (emerge zope), once you have run zope-config as
 described above, you should be able to start it by:
 (1) Change directory to /etc/init.d
(2) Find the startup script in the directory created when you create a zope instance (as described above) and
 then using:
 myhostname init.d # ./zope-my-new-zope-instance start

 You stop it using:

 myhostname init.d # ./zope-my-new-zope-instance start

 Remember, you must run zope-config to both create a zope instance and set the password as described above. I
 think there is a default instance, e.g., /etc/init.d/zope-2_6_4 which you could use. HTH Gentoo users.
Anonymous User - July 7, 2004 7:14 am:
 Obviously you meant:

 You stop it using:

  myhostname init.d # ./zope-my-new-zope-instance stop`

To start Zope, "cd" into to the directory in which you installed Zope and invoke the shell script named "start". Here is an example of this invocation and its typical output:


chrism@saints:~$ cd Zope-2.5.1-linux2-x86
chrism@saints:~/Zope-2.5.1-linux2-x86$ ./start
------
2002-06-28T03:17:02 INFO(0) ZODB Opening database for mounting: '142168464_1025234222.179125'
------
2002-06-28T03:17:02 INFO(0) ZODB Mounted database '142168464_1025234222.179125' at /temp_folder
------
2002-06-28T03:17:17 INFO(0) Zope New disk product detected, determining if we need to fix up any ZClasses.
------
2002-06-28T03:17:17 INFO(0) ZServer HTTP server started at Thu Jun 27 23:17:17 2002
        Hostname: saints
        Port: 8080
------
2002-06-28T03:17:17 INFO(0) ZServer FTP server started at Thu Jun 27 23:17:17 2002
        Hostname: saints
        Port: 8021
------
2002-06-28T03:17:17 INFO(0) ZServer PCGI Server started at Thu Jun 27 23:17:17 2002
        Unix socket: /home/chrism/Zope-2.5.1-linux2-x86/var/pcgi.soc
Anonymous User - Apr. 30, 2004 5:32 am:
 Zope, installed as a source distribution into /usr/local/zope, has no such 'start' script. I eventually
 discovered that one is supposed to use the 'runzope' script that's in the 'bin' subdirectory of the instance
 directory. It's worth nothing that the zope.conf used is located in the 'etc' subdirectory of the instance
 directory.
pipehappy - May 22, 2004 9:20 am:
 Zope, from a source distribution is installed into /opt/Zope-2.7 and the instance directory is in
 /opt/Zope-2.7/skel but I cannot find the 'start' or 'run' sript in it, only a sript called 'runzope.in' can
 be found. And it is not written in the correct form that it cannot be executed.
fromdownunder - Oct. 10, 2004 7:22 am:
 Just installed Zope-2.7.2-0 from source on a vanilla Fedora Core 2 installation.

 link (or copy) <zopeintance>/bin/zopectl to /etc/init.d/

 edit the zopectl file to include (as lines 2-3)
 # chkconfig: 345 30 70
 # description: Zope - My installation

 Then
 chkconfig --add zopectl
 and
 service zopectl start

 Zope is now automatically started in run levels 3,4,5, (shortly after apache starts on my system), and is
 shutdown on any other run level (shortly before apache stops)
hthen - Oct. 31, 2004 3:14 pm:
 I just installed zope from the suse rpm. To start zope, type /etc/init.rd/zope start. Use chkconfig to edit
 the runlevels at which it is automatically started.
Anonymous User - Mar. 28, 2005 12:33 am:
 FreeBSD 5.3 from ports, you will need to run:

 /usr/local/www/Zope/bin/mkzopeinstance.py

 Follow the nice instructions and write down you password, and add the following to /etc/rc.conf:

 zope_enable="YES"
 zope_instances="/some/path/to/zope/instance"

 Reboot and start the next chapter!

Starting Zope As The Root User

ZServer (Zope's server) supports setuid() on POSIX systems in order to be able to listen on low ports such as 21 (FTP) and 80 (HTTP) but drop root privileges when running; on most POSIX systems only the root user can do this. Versions of Zope prior to 2.6 had less robust versions of this support. Several problems were corrected for the 2.6 release.

The most important thing to remember about this support is that you don't have to start ZServer as root unless you want to listen for requests on "low" ports. In fact, if you don't have this need, you are much better off just starting ZServer as a user account dedicated to running Zope. nobody is not a good idea for this user account; see below.

If you do need to have ZServer listening on low ports, you will need to start z2.py as the root user, and also specify what user ZServer should setuid() to. Do this by specifying the -u option followed by a username or UID, either in the start script or on the z2.py command line. The default used to be 'nobody'; however if any other daemon on a system that ran as nobody was compromised, this would have opened up your Zope object data to compromise.

You must also make sure the "var" directory is owned by root, and that it has the sticky bit set. This is done by the command chmod o+t var on most systems. When the sticky bit is set on a directory, anyone can write files, but nobody can delete others' files in order to rewrite them. This is necessary to keep others from overwriting the PID file, tricking root into killing processes when stop is run.

Anonymous User - Dec. 7, 2003 7:50 am:
 Note: for Zope 2.7, none of this permission-sticky-bit-setting nonsense is necessary. Instead, just set the
 effective-user parameter to an existing (nonroot) username in the zope.conf file and start Zope as root. All
 files including log and pid files will be written as the lesser-privileged user.

Your Zope Installation

To use and manage Zope, you'll need a web browser. Zope's management interface is written entirely in HTML, therefore any browser that understands modern HTML allows you to manage a Zope installation. Mozilla, and any 3.0+ version of Microsoft Internet Explorer or Netscape Navigator will do. Other browsers that are known to work with Zope include Opera, Galeon, Konqueror, OmniWeb, Lynx, and W3M.

Anonymous User - July 15, 2005 7:59 pm:
 I can´t start with http://localhost:8080/, what it could be??, please help me.

Start a web browser on the same machine on which you installed Zope and visit the URL

http://localhost:8080/

. If your Zope is properly installed and you're visiting the correct URL, you will be presented with the Zope "QuickStart" screen.

Zope QuickStart

Figure 2-8 Zope QuickStart

Anonymous User - May 7, 2005 3:47 pm:
 If you have hostname "example.net" and IP 123.45.67.89, visit http://example.net:8080/, not
 http://209.59.166.224:8080/.

If you see this screen, congratulations! You've installed Zope successfully. If you don't, see the Troubleshooting section below.

aryansinfo - July 9, 2005 4:16 am:
 i have installed zope-2.8.0-final-win-32 on my windows 2003 server but it's not working

Logging In

To do anything remotely interesting with Zope, you need to use its "management interface". Zope is completely web-manageable. To log into the Zope management interface, use your web browser to navigate to Zope's management URL. Assuming you have Zope installed on the same machine from which you are running your web browser, the Zope management URL will be http://localhost:8080/manage.

Anonymous User - June 26, 2004 8:06 pm:
If you install Zope from the SuSE 9.1 distro the default user name and password are in the README.SUSE file.
u=superuser
 p=123

Successful contact with Zope using this URL will result in an authentication dialog. In this dialog enter the "initial" username and password you chose when you installed Zope. You will be presented with the Zope Management Interface (ZMI).

Anonymous User - Mar. 4, 2004 3:16 pm:
 If you installed Zope for FreeBSD from the ports, use u=zopemaster p=test for login.
Anonymous User - Apr. 27, 2004 3:46 pm:
 If you install Zope in Gentoo using emerge you need to setup your user's password first before being able to
use the console... once Zope is installed you can do so from anywhere by running "zope-config --zpasswd" from
 anywhere. You'll be asked for an username and password (twice to verify). Once done this you should restart
 your zope instance if it's already running and you should be able to log in to ZMI
Anonymous User - May 30, 2004 5:51 pm:
 Plone RPM: plone/plone
treybean - Dec. 14, 2004 12:38 pm:
 For all you debian users out there, username=Admin.
Anonymous User - Mar. 14, 2005 2:20 pm:
Nice the user is 'Admin'. I wish I knew a password though or a nice script to change it (and no, playing with
 zpasswd.py doesn't do any good whatsoever)

The Zope management interface.

Figure 2-9 The Zope management interface.

If you do not see an authentication dialog and the Zope Management interface, refer to the Troubleshooting section of this chapter.

Anonymous User - Feb. 17, 2004 2:25 am:
 if haven't conf initial pass use (in debian sid):
 zope-zpasswd -e SHA -u admin -p xxx /var/lib/zope/instance/default/access
Anonymous User - May 13, 2004 1:41 pm:
 or:
 zopectl access
 (at least in debian sarge)
Anonymous User - May 12, 2005 9:48 pm:
 Debian Sarge with zope package
 This worked for me 
 zope-zpasswd -e SHA -u admin -p xxx /var/lib/zope/instance/default/inituser
Anonymous User - July 12, 2005 9:39 pm:
 Dont forget to run it using /etc/init.d/zope start, cause if you start by hand, the zope will not get the
 /var/lib/zope/instance/default as it initial instance configuration file.
 Breno Leitao

Controlling the Zope Process With the Control Panel

When you are using the ZMI, you can use the Zope Control Panel to control the Zope process. Find and click the Control_Panel object in ZMI.

The Control Panel

Figure 2-17 The Control Panel

The Control Panel displays information about your Zope, such as the Zope version you're running, the Python version that Zope is using, the system platform, the "SOFTWARE_HOME" (your Zope directory), the "INSTANCE_HOME" (typically the same as your zope home), your "CLIENT_HOME" directory (the "var" directory of your Zope), Zope's process id, and how long Zope has been running for. Several buttons and links will also be shown.

If you are running Zope on UNIX or as a service on Windows, you will see a button in the Control Panel named Restart. If you click the Restart button, Zope will shut down and then immediately start up again. It may take Zope a few seconds to come back up and start handling requests. You needn't shut your web browser down and restart it to resume using Zope after pressing Restart, just wait for the Control Panel display to reappear.

To shut Zope down from the ZMI, click the Shutdown button. Shutting Zope down will cause the server to stop handling requests and exit. You will have to manually start Zope to resume using it. Shut Zope down only if you are finished using it and you have the ability to access the server on which Zope is running, so that you can manually restart it later. If you see a "strange" message appear in your web browser when you shut Zope down, don't panic. This is normal. A normal shutdown presents the user with a web page that states:


An error was encountered while publishing this resource
exceptions.SystemExit
Zope has exited normally
( .. more output ..)

Controlling the Zope Process From the Command Line

To stop a manually-run Zope on Windows press "Ctrl-C" while the console window under which Zope is running is selected. To stop a Zope on Windows that was run as a service, find the service with the name you assigned to your Zope installed in the Services Control Panel application and stop the service.

To stop Zope on UNIX, press "Ctrl-C" in the terminal window from which you started Zope or use the UNIX "kill" command against the lowest-numbered Zope process id. Zope processes under UNIX will be listed in "ps" output as "python z2.py [ options ]". This process id can also be found in the "var/Z2.pid" file inside of your Zope directory.

Troubleshooting

If your browser fails to connect with anything on TCP port 8080, your Zope may be running on a nonstandard TCP port (for example, some versions of Debian Linux ship with Zope's TCP port as 9673). To find out exactly which URL to use, look at the logging information Zope prints as it starts up. For example:


------
2000-08-07T23:00:53 INFO(0) ZServer Medusa (V1.18) started at Mon Aug  7 16:00:53 2000
        Hostname: peanut
        Port:9673

------
2000-08-07T23:00:53 INFO(0) ZServer FTP server started at Mon Aug  7 16:00:53 2000
        Authorizer:None
        Hostname: peanut
        Port: 8021
------
2000-08-07T23:00:53 INFO(0) ZServer Monitor Server (V1.9) started on port 8099  

The first log entry indicates that Zope's web server is listening on port 9673. This means that the management URL is http://peanut:9673/manage.

Certain versions of Microsoft Internet Explorer 5.0.1 and 5.5 have issues with the Zope management interface which manifest themselves as an inability to properly log in. If you have troubles logging in with IE 5.0.1 or IE 5.5, try a different browser or upgrade to IE 6.

If you forget or lose the initial user name and password, shut Zope down and change the initial user password with the zpasswd.py script and restart Zope. See the chapter entitled Users and Security for more information about configuring the initial user account.

Anonymous User - May 18, 2004 6:58 pm:
 This above point is super important. Make sure to *shutdown* the server, then run zpasswd, *then* start the
 server. It has to reload this info.

Options To The Zope start or start.bat Script

The Zope startup script named start (or start.bat on Windows) has many command-line switch options. They are the same for UNIX and Windows (although some only work on one or the other). These command-line switches are detailed below:


-h

  Output help text.

-z path

  The location of the Zope installation.
  The default is the location of the "z2.py" script.

-Z path

  Unix only! This option is ignored on windows.

  If this option is specified, a separate managemnt process will
  be created that restarts Zope after a shutdown (or crash).
  The path must point to a pid file that the process will record its
  process id in. The path may be relative, in which case it will be
  relative to the Zope location.

  To prevent use of a separate management process, provide an
  empty string: -Z=''

-t n

  The number of threads to use.  The default is 4.

-i n

  Set the interpreter check interval. This integer value
  determines how often the interpreter checks for periodic things
  such as thread switches and signal handlers. The Zope default
  is 500, but you may want to experiment with other values that
  may increase performance in your particular environment.

-D

  Run in Zope debug mode.  This causes the Zope process not to
  detach from the controlling terminal, and is equivalent to
  supplying the environment variable setting Z_DEBUG_MODE=1

-a ipaddress

  The IP address to listen on.  If this is an empty string
  (e.g. -a ''), then all addresses on the machine are used.

-d ipaddress

  IP address of your DNS server. If this is an empty string
  (e.g. -d ''), then IP addresses will not be logged. If you have
  DNS service on your local machine then you can set this to
  127.0.0.1.

-u username or uid number

  The username to run Zope as.  You may want to run Zope as
  a dedicated user.  This only works under Unix.  If Zope
  is started as root, it is a required parameter.

-P [ipaddress:]number

  Set the web, ftp and monitor port numbers simultaneously
  as offsets from the number.  The web port number will be number+80.
  The FTP port number will be number+21.  The monitor port number will
  be number+99.

  The number can be preeceeded by an ip address follwed by a colon
  to specify an address to listen on. This allows different servers
  to listen on different addresses.

  Multiple -P options can be provided to run multiple sets of servers.

-w port

  The Web server (HTTP) port.  This defaults to 8080. If this
  is a dash (e.g. -w -), then HTTP is disabled.

  The number can be preeceeded by an ip address follwed by a colon
  to specify an address to listen on. This allows different servers
  to listen on different addresses.

  Multiple -w options can be provided to run multiple servers.

-W port

  The "WebDAV source" port.  If this is a dash (e.g. -w -), then
  "WebDAV source" is disabled.  The default is disabled.  Note that
  this feature is a workaround for the lack of "source-link" support
  in standard WebDAV clients.

  The port can be preeceeded by an ip address follwed by a colon
  to specify an address to listen on. This allows different servers
  to listen on different addresses.

  Multiple -W options can be provided to run multiple servers.

-C
--force-http-connection-close

  If present, this option causes Zope to close all HTTP connections,
  regardless of the 'Connection:' header (or lack of one) sent by
  the client.

-f port

  The FTP port.  If this is a dash (e.g. -f -), then FTP
  is disabled.  The standard port for FTP services is 21.  The
  default is 8021.

  The port can be preeceeded by an ip address follwed by a colon
  to specify an address to listen on. This allows different servers
  to listen on different addresses.

  Multiple -f options can be provided to run multiple servers.

-p path

  Path to the PCGI resource file.  The default value is
  var/pcgi.soc, relative to the Zope location.  If this is a dash
  (-p -) or the file does not exist, then PCGI is disabled.

-F path_or_port

  Either a port number (for inet sockets) or a path name (for unix
  domain sockets) for the FastCGI Server.  If the flag and value are
  not specified then the FastCGI Server is disabled.

-m port

  The secure monitor server port. If this is a dash
  (-m -), then the monitor server is disabled. The monitor server
  allows interactive Python style access to a running ZServer. To
  access the server see medusa/monitor_client.py or
  medusa/monitor_client_win32.py. The monitor server password is the
  same as the Zope emergency user password set in the 'access'
  file. The default is to not start up a monitor server.

  The port can be preeceeded by an ip address follwed by a colon
  to specify an address to listen on. This allows different servers
  to listen on different addresses.

  Multiple -m options can be provided to run multiple servers.

--icp port

  The ICP port. ICP can be used to distribute load between back-end
  zope servers, if you are using an ICP-aware front-end proxy such
  as Squid.

  The port can be preeceeded by an ip address follwed by a colon
  to specify an address to listen on. This allows different servers
  to listen on different addresses.

  Multiple --icp options can be provided to run multiple servers.

-l path

  Path to the ZServer log file. If this is a relative path then the
  log file will be written to the 'var' directory. The default is
  'var/Z2.log'. 

-r

  Run ZServer is read-only mode. ZServer won't write anything to disk.
  No log files, no pid files, nothing. This means that you can't do a
  lot of stuff like use PCGI, and zdaemon. ZServer will log hits to
  STDOUT and zLOG will log to STDERR.

-L

  Enable locale (internationalization) support. The value passed for
  this option should be the name of the locale to be used (see your
  operating system documentation for locale information specific to
  your system). If an empty string is passed for this option (-L ''),
  Zope will set the locale to the user's default setting (typically
  specified in the $LANG environment variable). If your Python
  installation does not support the locale module, the requested
  locale is not supported by your system or an empty string was
  passed but no default locale can be found, an error will be raised
  and Zope will not start.

-X

  Disable servers. This might be used to effectively disable all
  default server settings or previous server settings in the option
  list before providing new settings. For example to provide just a
  web server:

    ./start -X -w80

-M file

  Save detailed logging information to the given file.
  This log includes separate entries for:

    - The start of a request,
    - The start of processing the request in an application thread,
    - The start of response output, and
    - The end of the request.

finrod - Dec. 29, 2004 8:41 am:
 Similarly - when I use the "-h" option to get help...it responds and tells me that the option docs have not
 yet been implemented. It would be good to add those when you get a chance...
finrod - Dec. 29, 2004 8:32 am:
 When I attempt to use the -M option with the runZope.bat I get the following error:

 C:\Zope-Instance\bin>runzope -M c:\temp\zope.txt

 C:\Zope-Instance\bin>"C:\Zope\bin\python.exe" "C:\Zope\lib\python\Zope\Startup\r
 un.py" -C "C:\Zope-Instance\etc\zope.conf" -M c:\temp\zope.txt
 C:\Zope\bin\lib\fcntl.py:7: DeprecationWarning: the FCNTL module is deprecated;
 please use fcntl
   DeprecationWarning)
 Error: option -M not recognized
 For help, use C:\Zope\lib\python\Zope\Startup\run.py -h
Anonymous User - May 12, 2004 2:20 pm:
 How can one use these type of options if you have Zope setup as a Windows service? I tried to use the "Start
 parameters" field within Windows Services interface for my Zope Instance service but didn't seem to change
 the port numbers for example.

Environment Variables that Affect Zope at Runtime

Zope behavior is also effected by the presence and value of operating system environment variables that are available in the shell from which Zope is started.

To set an OS environment variable under UNIX in the bash shell, use the "export" command e.g. export EVENT_LOG_FILE=/home/chrism/Zope/var/event.log. To set an OS environment variable under Windows NT/2000, use the Control Panel -> System applet or use the DOS-mode "set" command e.g. set EVENT_LOG_FILE=c:\chrism\Zope\var\event.log. The "set" command can also be used in Windows 98/ME. Below are the environment variables that effect Zope runtime behavior, inlcluding descriptions of each:


Zope library paths

    PYTHONPATH

        Effects the library load path used by Python.  See "The
        Python Tutorial Modules
        Chapter":http://www.python.org/doc/current/tut/node8.html
        for more information about PYTHONPATH.

    INSTANCE_HOME

        If an INSTANCE_HOME is defined and has a 'lib/python' sub
        directory, it will be added to the front of the PYTHONPATH.
        INSTANCE_HOME is usually used to separate the Zope core
        installation from application code and third-party
        modules/products.

        See also: SOFTWARE_HOME

    SOFTWARE_HOME 

        The SOFTWARE_HOME usually keeps the directory name of the 
        Zope core installation.

        See also: INSTANCE_HOME

    ZOPE_HOME

        ZOPE_HOME is the root of the Zope software, where the
        ZServer package, z2.py, and the default import directory
        may be found.

Profiling

    PROFILE_PUBLISHER

        If set, Zope is forced profile every request of the
        ZPublisher.  The profiling information is written to the
        value of the PROFILE_PUBLISHER.

Access Rules and Site Roots

    SUPPRESS_ACCESSRULE

        If set, all SiteRoot behaviors are suppressed.

    SUPPRESS_SITEROOT

        If set, all access rules behaviors are suppressed.

ZEO-related

    CLIENT_HOME

        CLIENT_HOME allows ZEO clients to easily keep distinct
        pid and log files. This is currently an *experimental*
        feature.

    ZEO_CLIENT

        If you want a persistent client cache which retains
        cache contents across ClientStorage restarts, you need
        to define the environment variable, ZEO_CLIENT, to a
        unique name for the client.  This is needed so that
        unique cache name files can be computed.  Otherwise, the
        client cache is stored in temporary files which are
        removed when the ClientStorage shuts down.

Debugging and Logging

    EVENT_LOG_FORMAT or STUPID_LOG_FORMAT

        Set this variable if you like to customize the output
        format of Zope event logger.  EVENT_LOG_FORMAT is the
        preferred envvar but STUPID_LOG_FORMAT also works.

    EVENT_LOG_FILE="path" or STUPID_LOG_FILE="path"

        The event file logger writes Zope logging information to a file.
        It is not very smart about it - it just dumps it to a file and the
        format is not very configurable - hence the name STUPID_LOG_FILE.
        EVENT_LOG_FILE is the preferred envvar but STUPID_LOG_FILE
        also works.

        See also: LOGGING.txt in top-level Zope "doc" directory. 

    EVENT_LOG_SEVERITY <number> or STUPID_LOG_SEVERITY <number>

        If set, Zope logs only messages whose severity is level is
        higher than the specified one.  EVENT_LOG_SEVERITY is the
        preferred envvar but STUPID_LOG_SEVERITY also works.

    ZSYSLOG="/dev/log"

        Setting this environment variable will cause Zope to try
        and write the event log to the named UNIX domain socket
        (usually '/dev/log').  This will only work on UNIX.

        See also: LOGGING.txt

    ZSYSLOG_FACILITY="facilityname"

        Setting this environment variable will cause Zope to use
        the syslog logger with the given facility. This
        environment variable is optional and overrides the
        default facility "user". This will only work on UNIX.

        See also: LOGGING.txt in top-level Zope "doc" directory. 

    ZSYSLOG_SERVER="machine.name:port"

        Setting this environment variable tells Zope to connect
        a UDP socket to machine.name (which can be a name or IP
        address) and 'port' which must be an integer.  The
        default syslogd port is '514' but Zope does not pick a
        sane default, you must specify a port.  This may change,
        so check back here in future Zope releases.

        See also: LOGGING.txt in top-level Zope "doc" directory. 

    ZSYSLOG_ACCESS="/dev/log"
    ZSYSLOG_ACCESS_FACILITY="facilityname"
    ZSYSLOG_ACCESS_SERVER="machine.name:port"

        Like ZSYSLOG, ZSYSLOG_FACILITY, and ZSYSLOG_SERVER, but
        controlling the sending of access information to syslog
        (rather than controlling the sending of the event log)

    Z_DEBUG_MODE      "yes" or "no"
    BOBO_DEBUG_MODE   "yes" or "no"  (obsolete)

        Run Zope in "debug mode" if set. Same as -D option
        to 'z2.py' or 'start'.

Misc.

    Z_REALM       "your realm"
    BOBO_REALM    "your realm" (obsolete)

        Realm to be used when send HTTP authentication requests
        to a web client. The real string is displayed when the
        web browser pops up the username/password requester

Security related 

    ZOPE_SECURITY_POLICY

        If this variable is set to "PYTHON", Zope will use the
        traditional Python based AccessControl
        implementation. By default and for performance reasons
        Zope will use the cAccessControl module.

    ZSP_OWNEROUS_SKIP

        If set, will cause the Zope Security Policy to skip
        checks relating to ownership, for servers on which
        ownership is not important.

    ZSP_AUTHENTICATED_SKIP

        If set, will cause the Zope Security Policy to skip
        checks relating to authentication, for servers which
        serve only anonymous content.

    ZOPE_DTML_REQUEST_AUTOQUOTE

        Set this variable to one of 'no', '0' or 'disabled' to
        disable autoquoting of implicitly retrieved REQUEST data
        that contain a '<' when used in a dtml-var
        construction. When *not* set to one of these values, all
        data implicitly taken from the REQUEST (as oposed to
        addressing REQUEST.varname directly), that contain a
        '<', will be HTML quoted when interpolated with a
        <dtml-var> or &dtml-; construct.

ZODB related

    ZOPE_DATABASE_QUOTA

        If this variable is set, it should be set to an integer
        number of bytes.  Additions to the database are not
        allowed if the database size exceeds the quota.

    ZOPE_READ_ONLY

        If this variable is set, then the database is opened in
        read only mode.  If this variable is set to a string
        parsable by DateTime.DateTime, then the database is
        opened read-only as of the time given.  Note that
        changes made by another process after the database has
        been opened are not visible.

Session related

    ZSESSION_ADD_NOTIFY

        An optional full Zope path name of a callable object to
        be set as the "script to call on object addition" of the
        session_data transient object container created in
        temp_folder at startup.

    ZSESSION_DEL_NOTIFY

        An optional full Zope path name of a callable object to
        be set as the "script to call on object deletion" of the
        session_data transient object container created in
        temp_folder at startup.

    ZSESSION_TIMEOUT_MINS

        The number of minutes to be used as the "data object
        timeout" of the "/temp_folder/session_data" transient
        object container.

    ZSESSION_OBJECT_LIMIT

        The number of items to use as a "maximum number of
        subobjects" value of the "/temp_folder" session data
        transient object container.

WebDAV

    WEBDAV_SOURCE_PORT_CLIENTS 

        Setting this variable enables the retrieval of the
        document source through the standard HTTP port instead
        of the WebDAV port. The value of this variable is a
        regular expression that is matched against the
        user-agent string of the client.

        Example::

            WEBDAV_SOURCE_PORT_CLIENTS="cadaver.*"   enables retrieval
            of the document source for the Cadaver WebDAV client                

Structured Text

    STX_DEFAULT_LEVEL

       Set this variable to change the default level for <Hx>
       elements.  The default level is 3.

Esoteric 

    Z_MAX_STACK_SIZE

        This variable allows you to customize the size of the
        Zope stack used by the SecurityManager (default 100).
Anonymous User - Dec. 7, 2003 7:51 am:
 Under Zope 2.7, none of these environment variables are used. Instead, use the equivalent settings in the
 zope.conf file.
Anonymous User - June 9, 2005 9:14 pm:
 Apologies, I've also posted this somewhere else then realised this is the way to add comments : 

 The following tow statements seem to be reversed in the document: 

 Access Rules and Site Roots

     SUPPRESS_ACCESSRULE

         If set, all SiteRoot behaviors are suppressed.

     SUPPRESS_SITEROOT

         If set, all access rules behaviors are suppressed.

When All Else Fails

If there's a problem with your installation that you just can't seem to solve, don't despair. You have many places to turn for help, including the Zope maillists and the #zope IRC channel.

Anonymous User - Dec. 16, 2004 11:00 am:
 Thats on irc.freenode.org

If you are new to open source software, please realize that, for the most part, participants in the various "free" Zope support forums are volunteers. Though they are typically friendly and helpful, they are not obligated to answer your questions. Therefore, it's in your own self-interest to exercise your best manners in these forums in order to get your problem resolved quickly.

Anonymous User - Dec. 16, 2004 11:02 am:
 Make sure you read this before asking: http://www.catb.org/~esr/faqs/smart-questions.html

The most reliable way to get installation help is to send a message to the general Zope maillist detailing your installation problem. For more information on the available Zope mailing lists, see the Resources section of Zope.org. Typically someone on the "[email protected]" list will be willing to help you solve the problem.

Chirael - Mar. 22, 2004 5:04 pm:
 You might recommend that people check the mailing list archives to see if their questions have already been
 asked and answered, before posting a new question.

For even more immediate help, you may choose to visit the #zope channel on the OpenProjects IRC (Internet Relay Chat) network. See the OpenProjects website for more information on how to connect to the OpenProjects IRC network.

Anonymous User - Oct. 29, 2004 10:34 am:
 I believe OpenProjects changed their name to freenode.net , so you should go to the #zope room on
 irc.freenode.net
 HTH, 
 Michael Van Wesenbeeck

If you are truly desperate and under a time constraint that prohibits you from utilizing "free" support channels, Zope Corporation provides for-fee service contracts which you can use for Zope installation help. See Zope.com for more information about Zope Corporation service contracts.

Previous Page Up one Level Next Page Installing and Starting Zope Comments On/Off Table of Contents