zope.paste je balíček, který umožňuje
- Zaměstnat WSGI middlewares uvnitř aplikace Zope 3
- Nasadit aplikační server Zope 3 na jakékoli WSGI schopných webserver
pomocí PasteDeploy. To jsou dva zcela odlišné způsoby činnosti, které mají pouze společné to, že jsou usnadňují PasteDeploy. Každý z nich je podrobně vysvětleno v níže.
WSGI middlewares uvnitř Zope 3
zope.paste umožňuje na sebe WSGI middlewares na vrcholu vydavatele žádosti ZOPE 3, aniž mění způsob, jakým můžete konfigurovat Zope (zope.conf), nebo spustit (runzope, zopectl).
Konfigurace je velmi jednoduché. Za předpokladu, že jste již vytvořili Zope 3 instance pomocí mkzopeinstance skriptu, jsou tam tři kroky, které je potřeba provést:
Instalace a konfigurace zope.paste
zope.paste může být instalován jako vejce kdekoli na vašem PYTHONPATH nebo prostě spadl do vašeho
Konfigurace serveru
Vytváříme
& Nbsp; typu Paste.Main
& Nbsp; adresa 8081
Konfigurace WSGI zásobníku
Nyní konfigurovat aplikace WSGI pomocí PasteDeploy syntaxi
[App: Paste.Main]
paste.app_factory = zope.paste.application: zope_publisher_app_factory
To není opravdu zajímavé, ačkoli. PasteDeploy umožňuje řetězce různých WSGI subjekty dohromady, což je místo, kde se začíná být zajímavé. Zdá se, že rozdíl mezi "aplikacemi" a "filtrů" (označované také jako "middleware"). Příkladem, které by mohly být zajímavé je aplikace XSLT transformace výstupu WSGI aplikace Zope 3.
Naštěstí dost, někdo zdá se, že již vytvořili WSGI filtr pro aplikování XSLT stylů. Najdete ji na http://www.decafbad.com/2005/07/xmlwiki/lib/xmlwiki/xslfilter.py
Pokud byste chtěli použít tuto WSGI filtr Zope 3, budete potřebovat tři věci:
1. Dejte soubor xslfilter.py někde v PYTHONPATH. / Lib / python je dobré místo.
2. Přidat fragment na dno xslfilter.py:
& Nbsp; def filter_factory (global_conf, ** local_conf):
& Nbsp; def filtru (app):
& Nbsp; návrat XSLFilter (APP)
& Nbsp; návrat filtr
3. Změňte paste.ini souboru takto:
& Nbsp; [potrubí: Paste.Main]
& Nbsp; potrubí = XSLT hlavní
& Nbsp; [app: hlavní]
& Nbsp; paste.app_factory = zope.paste.application: zope_publisher_app_factory
& Nbsp; [filter: XSLT]
& Nbsp; paste.filter_factory = xslfilter: filter_factory
& Nbsp; Co to dělá, je definovat potrubí. Přečtěte si více o této skutečnosti na internetových stránkách PasteDeploy. Viz zdroj xslfilter.py Informace o tom, jak předat stylů do filtru.
Nasazení Zope 3 na WSGI-schopný webový server
zope.paste umožňuje spustit Zope 3 na jakémkoli WSGI-schopný webserver softwaru pomocí PasteDeploy. K tomu už nebudete potřebovat Zope 3 instance (i když stále můžete mít jeden), nebudete konfigurovat Zope 3 přes zope.conf a nezačne ji pomocí runzope nebo zopectl.
Konfigurace aplikace
zope.paste poskytuje PasteDeploy kompatibilní s výrobcem WSGI vydavatele aplikace Zope 3 a registruje jej do vstupního bodu. Můžeme tedy vytvořit velmi jednoduchou Zope 3 aplikace v konfiguračním souboru PasteDeploy (např paste.ini):
[App: hlavní]
Použití = vejce: zope.paste
site_definition = /path/to/site.zcml
file_storage = /path/to/Data.fs
DEVMODE = na
V tomto případě, /path/to/site.zcml týká site.zcml jak je známo z Zope 3 stupni. Můžete například umístit paste.ini do existující Zope 3 Například vedle site.zcml.
Konfigurace databáze ZODB
Místo toho, aby s odkazem na ZODB FileStorage pomocí nastavení file_storage, můžete také konfigurovat více či jiné ZODB databázové služby v konfiguračním souboru ZConfig stylu (podobně jako zope.conf), např vkládá se konfiguruje Zeo klienta:
& Nbsp;
& Nbsp; serveru localhost: 8100
& Nbsp; skladování 1
& Nbsp; cache-velikost 20 MB
& Nbsp;
Naleznete v tomto souboru z paste.ini tímto způsobem (a odstranit nastavení file_storage):
db_definition = db.conf
Konfigurace serveru
Aby bylo možné použít náš Zope aplikaci, jen musíme přidat definici serveru. Můžeme použít ten, který je dodáván s pasty nebo PasteScript, spíše:
[Server: hlavní]
Použití = vejce: PasteScript # wsgiutils
host = 127.0.0.1
port = 8080
Nyní můžeme spustit aplikaci pomocí PASTER příkaz, který je dodáván s PasteScript:
& Nbsp; paster sloužit paste.ini
WSGI middlewares může být nakonfigurován tak, jako je popsáno výše, nebo na webových stránkách PasteDeploy
Co je nového v této verzi:.
- Přidána podpora pro Python 3.3.
- Ukončení podpory pro Python 2.4 a 2.5.
- Odstraněna podpora pro zaměstnávání WSGI middlewares uvnitř aplikace Zope 3. Teprve nyní podporuje spouštěcí skript založený na serveru.
- Přidány nové konzole skript pro spuštění vložit nakonfigurován WSGI server a aplikace.
- Odpovídají standardní rozložení projektu ZF.
- Added licence a autorská práva souborů. Opraveny také prohlášení o autorských právech v záhlaví souboru.
- Added MANIFEST.in a tox.ini.
Co je nového ve verzi 0.4:
- Přidat tuto changelog, po rekonstrukci z SVN kulatiny a uvolňovat data na PyPI.
- Podpořte konfigurační možnosti "je k dispozici" v souboru PasteDeploy INI, který může obsahovat prostor oddělený seznam názvů funkcí. Ty mohou být testovány v ZCML soubory se syntaxí.
- Dříve jediný rys, který by mohl být povolen, byl "DEVMODE", a měl své vlastní volby. Pro zpětnou kompatibilitu, DEVMODE = na dodává "DEVMODE" prvek do seznamu funkcí.
Požadavky na :
- Python
Komentáře nebyl nalezen