zope.paste є пакет, який дозволяє
- Найміть WSGI проміжне програмне всередині програми Zope 3
- Розгортання сервера додатків Zope 3 на будь-якому WSGI-сумісний веб-сервер
за допомогою PasteDeploy. Це два абсолютно різних спосіб дії, які мають тільки загальне, що вони полегшують PasteDeploy. Кожен докладно описано нижче.
WSGI проміжне програмне всередині Zope 3
zope.paste дозволяє укладати WSGI проміжне програмне поверх видавцеві додатки Zope 3 без зміни спосіб налаштування Zope (zope.conf) або запустити його (runzope, zopectl).
Конфігурація дуже проста. Припускаючи, що ви вже створили 3 екземпляри Zope за допомогою сценарію mkzopeinstance, є три кроки, які повинні бути виконані:
Встановлення та налаштування zope.paste
zope.paste може бути встановлений як яйце в будь-якому місці на вашому PYTHONPATH або просто впав у вашому
<Включають пакет = "zope.paste" />
Налаштування сервера
Ми створюємо <сервер> директива
<Сервер>
І NBSP; Тип Paste.Main
І NBSP; адреса 8081
Сервер>
Налаштування стека WSGI
Тепер ми налаштовуємо WSGI додаток, використовуючи синтаксис PasteDeploy в
[Додаток: Paste.Main]
paste.app_factory = zope.paste.application: zope_publisher_app_factory
Це насправді не цікаво, хоча. PasteDeploy дозволяє ланцюга різних WSGI осіб разом, який є, де це стає цікавим. Там, здається, відмінність між "додатків" і "фільтри" (також відомий як "проміжного"). Приклад того, що може становити інтерес застосовує перетворення XSLT до виходу в WSGI додатки Zope 3.
Досить щастя, хтось, здається, вже створили WSGI-фільтр для застосування XSLT стилів. Ви можете знайти його на http://www.decafbad.com/2005/07/xmlwiki/lib/xmlwiki/xslfilter.py
Якщо ви хочете застосувати цю WSGI фільтр Zope 3, вам буде потрібно три речі:
1. Помістіть файл xslfilter.py десь в PYTHONPATH. / Lib / пітон гарне місце.
2. Додайте цей фрагмент в нижній частині xslfilter.py:
І NBSP; Def filter_factory (global_conf ** local_conf):
І NBSP; Def фільтр (додаток):
І NBSP; повернутися XSLFilter (додаток)
І NBSP; зворотнього фільтру
3. Змініть paste.ini файл наступним чином:
І NBSP; [трубопроводу: Paste.Main]
І NBSP; трубопровід = XSLT головна
І NBSP; [додаток: головна]
І NBSP; paste.app_factory = zope.paste.application: zope_publisher_app_factory
І NBSP; [фільтр: XSLT]
І NBSP; paste.filter_factory = xslfilter: filter_factory
І NBSP; Що це робить, щоб визначити трубопроводу. Дізнатися більше про це на сайті PasteDeploy. Зверніться до джерела xslfilter.py для отримання інформації про те, як пройти стилів для фільтра.
Розгортання Zope 3 на WSGI-сумісний веб-сервер
zope.paste дозволяє запускати Zope 3 на будь-якому WSGI-сумісний веб-сервера програмного забезпечення з використанням PasteDeploy. Для цього вам більше не буде потрібен екземпляр Zope 3 (хоча ви все одно можете мати один), ви не будете налаштовувати Zope 3 через zope.conf і не почне його за допомогою runzope або zopectl.
Налаштування програми
zope.paste забезпечує PasteDeploy-сумісний завод по WSGI видавця додатки Zope 3 і реєструє його в якості точки входу. Тому ми можемо створити дуже простий Zope 3 додатка у файлі конфігурації PasteDeploy (наприклад, paste.ini):
[Додаток: головна]
Використання = яйце: zope.paste
site_definition = /path/to/site.zcml
file_storage = /path/to/Data.fs
DEVMODE = на
У цьому випадку, /path/to/site.zcml відноситься до site.zcml, як відомо з, наприклад Zope 3. Ви можете, наприклад, покласти paste.ini в існуючу Zope 3, наприклад, поряд з site.zcml.
Налаштування бази даних ZODB
Замість посилання на ZODB сховище файлів за допомогою параметра file_storage, ви також можете налаштувати декілька або інші движки ZODB бази даних у файлі конфігурації ZConfig стилі (так само, як zope.conf), наприклад, Нижче налаштовує клієнта ZEO:
І NBSP;
І NBSP; сервер локальний: 8100
І NBSP; зберігання 1
І NBSP; кеш-розмір 20 Мб
І NBSP;
Звертайтеся до цього файлу з paste.ini таким чином (і видаляти настройки file_storage):
db_definition = db.conf
Налаштування сервера
Для того, щоб мати можливість використовувати наш додаток Zope, нам потрібно тільки додати визначення сервера. Ми можемо використовувати той, який приходить з пастою або PasteScript, а:
[Сервер: головна]
Використання = яйце: PasteScript # wsgiutils
Host = 127.0.0.1
порт = 8080
Тепер ми можемо запустити програму за допомогою команди Пастер, який поставляється з PasteScript:
І NBSP; Пастер служити paste.ini
WSGI проміжне програмне можуть бути налаштовані як описано вище, або на веб-сайті PasteDeploy
Що нового У цьому випуску :.
- Додана підтримка для Python 3.3.
- Припинено підтримка Python 2.4 і 2.5.
- Вилучено підтримка використання WSGI проміжне програмне всередині програми Zope 3. Тільки запуску сервера на основі сценаріїв тепер підтримується.
- Додана нова консоль сценарій для запуску пасти налаштований WSGI сервера і сервера додатків.
- Відповідає стандарту проекту планування ZF.
- Ліцензія Додано та авторські права файлів. Також виправлений авторські права в заголовках файлів.
- Додана MANIFEST.in і tox.ini.
Що нового у версії 0.4:
- Додати цю змін, реконструйована з колод SVN і дати випуску на PyPI.
- Підтримка конфігурації опцію 'Features' у файлі PasteDeploy INI, який може містити розділений пробілами список імен функцій. Вони можуть бути перевірені на в ZCML файлів з синтаксисом.
- Раніше тільки функція, яка може бути включена був "DEVMODE», і це був свій власний варіант. Для забезпечення зворотної сумісності, DEVMODE = на додає функцію "DEVMODE" до списку можливостей.
Вимоги
- Python
Коментар не знайдено