Zope configuration
Next up is making sure your Zope server is configured correctly.
Configuring the Zope server
You need to configure the Zope server next. At least you should change the following options in your etc/zope.conf:
- debug-mode on
- Debugging is enabled by default. Leave it enabled until your Zope server works and then disabled it in production mode. CMF and Plone will run much faster in production mode.
- effective-user zope
- Define an existing effective user if you want to start Zope from the init process or as root.
- locale de_DE@euro
- Enables locales in Zope and sets it to de_De@euro (ISO-8859-15). You should set this var to your system default LC. On debian use dpkg-reconfigure-plowlocales to see a list of locales and to compile some.
- datetime-format international
- This is a good idea until you don't live in the usa.
- #ip-address unset
- If you don't set one Zope will bind to all interfaces except if you define one in a server section.
- port-base 10000
- Port offset (see below)
- address 127.0.0.1:80 (in <http-server>)
- Bind the http server to the loopback interface (localhost or 127.0.0.1) on port 10080 (port-base 10000 + 80). Nobody is able to connect to your Zope server directly.
- cache-size 5000 (in <zodb_db main>)
- Increases the cache size of your ZODB to 5000 objects. The cache should be as large as possible to increase the speed of Zope, but take care not to let it eat up all your RAM. If it's too large and your system needs to use the swap space on your hard drive, your Zope will become very slow!
If you are running in debug mode you should use $INSTANCE-HOME/bin/runzope to start Zope. You are able to read all debug information in your console and you can easily stop Zope by pressing CTRL+C. Later you should disable the debug mode and run Zope with $INSTANCE-HOME/bin/zopectl in daemon mode. zopectl is a cool tool and allows you a very easy integration of Zope in your boot process:
root@host:/$ cd /etc/init.d root@host:/etc/init.d$ ln -s /path/to/your/zope/instance/bin/zopectl myzope root@host:/etc/init.d$ /etc/init.d/myzope start
Configuring the Zope instance
Browse to the ZMI (Zope management interface) of your Zope server directly (without apache as frontend) http://localhost:10080/manage. If you don't have a browser on your server just bind the http server of Zope temporarily to all interfaces by simple removing 127.0.0.1 and restarting Zope.
If you have a linux server with lynx or links installed you can use this little trick to avoid problems with frames and the pull down add menu:
host:/$ lynx http://localhost:10080/manage_addProduct/SiteAccess/manage_addVirtualHostMonsterForm
Add a VirtualHostMonster with the id VirtualHostMonster to the root of your Zope instance (make sure it's not in the Plone instance, it should be one level above that). You could chose any id you like but it needs to be unique for your whole site so I think this is a good idea. :) Don't add more than one VHM to your Zope instance! One is enough for every subpage.
For this example you need to add a folderish type (e.g. a plone site to the root) with the id example_org to the root of your Zope instance.
Previous:
Preface and Apache 2 module configuration

