В данной статье описан процесс установки 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 заканчивается. Сервер готов к работе. Далее мы можем установить в среду дополнительные пакеты для различных целей и сделать небольшие дополнительные настройки. Например, могут потребоваться следующие библиотеки:
- работа с СУБД Oracle (cx_Oracle);
- работа с графическими объектами (Pillow);
- создание документов Excel (XLSXwriter);
- создание QR-кода (qrcode).
cx_Oracle
- Для соединения с СУБД Oracle в операционной системе должны быть установлены библиотеки клиентского подключения. Простейший вариант – взять с сайта Oracle архивы Instant Client (instantclient-basic-*.zip – основные файлы OCI) и распаковать их в директорию, где библиотеки и будут располагаться.
- Устанавливаем ORACLE_HOME и расширяем переменную PATH: путь к директории, где находятся файлы instanceclient должен присутствовать в переменной PATH. На эту же директорию должна указывать переменная окружения ORACLE_HOME.
- Устанавливаем пакет 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>