Author: Frank Hoffmann, Jürgen Klein, 2005/01/06
From ZMS-Version 2.2 on the character encoding UTF-8 is used. For this reason some issues are to be recognized when updating to ZMS2.2+/Zope2.7+. Regularly, the ISO-Latin Code must be substituted by HTML entities within templates and special objects. Also some CSS adaptations are to be done, especially concerning the ZMS teaser element. Find here a short list of the most important steps when updating.
*Example
Zope installation: /home/zope27
Here products can be installed that will be available in all instances
Zope-Instanz: /home/Zope
Here products can be installed that will be available in this instance
Alternatively to the update at a second computer you may also install a second Zope at the same computer which is running on another port (e.g. 8090); in this case only the port is to be changed finally when shifting.
When pages are divered by an Apache Webserver problems with the mod_proxy-Modul by Apache may occur.
From ZOPE 2.7 on ZOPE delivers a modified 304 message. (The server code 304 in HTTP log means 'Not Modified'). In opposite to former Zope versions, the file header now is delivered with this message only, but no longer the file itself.
This is correct by ZOPE, however it cannot be correctly processed by Apache mod_proxy.
mod_proxy substitutes the whole file in spite of server code 304 'Not modified'. Since Zope delivers only the header of the file with 304 Code 'Not Modified' but not the file itself, mod_proxy writes an uncomplete file in the cache. Logical consequence: the file (graphics incl. spacer etc.) cannot be displayed correctly.
1.) Comment out message 304 in the ZOPE source code.
App/ImageFile.py: #RESPONSE.setStatus(304)
OFS/Image.py: # RESPONSE.setStatus(304)
As a consequence, Zope delivers the file newly with each call. The page itself already is delivered quickly via Apache, however. By means of this workaround ZOPE has to do more work in the background without affecting the performance.
2.) Make use of Apache version 2.0. With this Apache version the problem does not occure.