Установка Zope 2 в виртуальной среде под Windows 7/10

В данной статье описан процесс установки Zope на примере версии 2.13.28 с python версии 2.7 в виртуальной среде virtualenv, являющейся модулем python.

Основные программы

Python

Устанавливаем среду python (python-2.7.15.exe). Для установки следует выбрать каталог, в полном пути к которому нет пробелов (Program Files не подходит).

Setuptools

Устанавливаем пакет setuptools (setuptools-x.x.zip). Следующие действия выполняются из командной строки (cmd.exe). В качестве <python_path> указываем полный путь к директории, где установлена среда python:

> <python_path>\Scripts\pip.exe install setuptools

Virtualenv

Устанавливаем пакет virtualenv (virtualenv 16.1.0) из командной строки:

<python_path>\Scripts\pip.exe install virtualenv

Zope2

Создаем виртуальное окружение и устанавливаем в него Zope2. <path_where_to_create_zope_software> – директория, где будет создаваться виртуальная среда для Zope (например, c:). Среда будет разворачиваться в поддиректорию, указанную в качестве параметра при запуске virtualenv.exe. В примере ниже указана директория Zope2.

> cd <path_where_to create_zope_software> 
> <python_path>\Scripts\virtualenv.exe --no-site-packages Zope2
> cd Zope2\Scripts
> pip.exe install nt_svcutils
> easy_install.exe -i http://download.zope.org/Zope2/index/2.13.28 Zope2

Zope Instance

Создаем Zope Instance. Сервер Zope создается утилитой mkzopeinstance.exe. В процессе создания необходимо ввести основные параметры, указанные ниже (в данном примере сервер создается в директории c:\Zope-Instances\Instance1):

> cd Zope2\Scripts\
> mkzopeinstance.exe
Directory: c:\Zope-Instances\Instance1
Username: admin
Password: password
Verify password: password

Создание службы Windows

По желанию можно создать службу Windows для запуска Zope Instance. Чтобы Zope запускался автоматически при старте системы. Для этого сначала нужно установить пакет pypiwin32 в виртуальную среду Zope.

Если данный пакет не установлен, то в возникнет ошибка:

...
import pywintypes
ImportError: No module named pywintypes

Устанавливаем pypiwin32.

> Zope2\Scripts\pip.exe install pypiwin32

Создавать службу Windows можно только в режиме администратора. Запускаем cmd.exe как администратор.

> c:
C:> cd \Zope-Instances\Instance1\bin
C:\Zope-Instances\Instance1\bin> zopectl install

Дополнительные пакеты

На этом моменте основная установка веб-сервера Zope заканчивается. Сервер готов к работе. Далее мы можем установить в среду дополнительные пакеты для различных целей и сделать небольшие дополнительные настройки. Например, могут потребоваться следующие библиотеки:

  1. работа с СУБД Oracle (cx_Oracle);
  2. работа с графическими объектами (Pillow);
  3. создание документов Excel (XLSXwriter);
  4. создание QR-кода (qrcode).

cx_Oracle

  1. Для соединения с СУБД Oracle в операционной системе должны быть установлены библиотеки клиентского подключения. Простейший вариант – взять с сайта Oracle архивы Instant Client (instantclient-basic-*.zip – основные файлы OCI) и распаковать их в директорию, где библиотеки и будут располагаться.
  2. Устанавливаем ORACLE_HOME и расширяем переменную PATH: путь к директории, где находятся файлы instanceclient должен присутствовать в переменной PATH. На эту же директорию должна указывать переменная окружения ORACLE_HOME.
  3. Устанавливаем пакет cx_Oracle:
> Zope2\Scripts\pip.exe install cx_Oracle==7.3

Pillow

Установка пакета pillow:

> Zope2\Scripts\pip.exe install Pillow

XLSXWriter

Установка пакета XlsxWriter:

> Zope2\Scripts\pip.exe install XlsxWriter

Qrcode

Установка пакета qrcode:

> Zope2\Scripts\pip.exe install qrcode

Настройка сервера Zope

Настройки сервера Zope определяются в файле конфигурации, который в данном примере находится по адресу: c:\Zope-Instances\Instance1\etc\zope.conf.

Определение кодировки веб-страниц

За это отвечает параметр default-zpublisher-encoding. Находим, снимаем комментарий и устанавливаем желаемое значение, например:

default-zpublisher-encoding koi8-r

Установка дополнительных модулей

Если мы планируем устанавливать в среду Zope дополнительные продукты (products), то потребуется раскомментировать параметр enable-product-installation. Устанавливаем следующее значение:

enable-product-installation on

Настройка портов

Изменить порт веб-сервера. Находим описание протоколов сервера: <http-server>. По-умолчанию определен веб-сервер, работающий по порту 8080. Можем изменить существующие настройки или добавить дополнительный порт прослушивания (например 80):

<http-server>
  address 80
</http-server>
Close Menu