zope.paste

Screenshot Software:
zope.paste
Detalii soft:
Versiune: 1.0.0 Alpha 1
Incarca data: 20 Feb 15
Producător: Sidnei da Silva
Licenţă: Gratuit
Popularitate: 4

Rating: 5.0/5 (Total Votes: 1)

zope.paste este un pachet care vă permite să
- Middleware angajeze WSGI în interiorul unei cereri de Zope 3
- Mobilizare a serverul de aplicații Zope 3 pe orice server de web-WSGI capabil
folosind PasteDeploy. Acestea sunt două moduri de operare complet diferite, care au în comun doar faptul că ele sunt facilitează PasteDeploy. Fiecare este explicată în detaliu mai jos.
Middleware WSGI interiorul Zope 3
zope.paste vă permite să stivă middleware WSGI pe partea de sus a editorului aplicare Zope 3, fără a schimba modul în care configurați Zope (zope.conf) sau rulați-l (runzope, zopectl).
Configurarea este foarte simplu. Presupunând că ați creat deja un Zope 3 instanță folosind scriptul mkzopeinstance, există trei etape care trebuie efectuate:
Instalarea și configurarea zope.paste
zope.paste poate fi instalat ca un ou oriunde pe PYTHONPATH ta sau pur și simplu a scăzut în / lib directorul dvs. / python. Apoi, trebuie să activați configurarea zope.paste de ZCML prin crearea fișierului /etc/package-includes/zope.paste-configure.zcml cu următorul cuprins:

Configurarea serverului
Vom crea o de directivă în /etc/zope.conf de a utiliza definiție de server zope.paste lui, Paste.Main. În acest fel, middleware WSGI vor fi invocat atunci când răspunsurile sunt servite prin acest server:

& Nbsp; tip Paste.Main
& Nbsp; adresa 8081

Configurarea stiva WSGI
Acum a configura o aplicație WSGI folosind PasteDeploy sintaxă în /etc/paste.ini. Iată un exemplu de cum să configurați aplicația Paste.Main de a utiliza editorul Zope 3 ca o aplicație WSGI, fac, prin urmare, exact același lucru ca definiția regulat serverul HTTP ar face:
[App: Paste.Main]
paste.app_factory = zope.paste.application: zope_publisher_app_factory
Asta nu e chiar interesant, totuși. PasteDeploy vă permite să lanț diverse entități WSGI împreună, care este în cazul în care acesta devine interesant. Se pare că există o distincție între "aplicații" și "filtre" (denumit în continuare "middleware"). Un exemplu care ar putea fi de interes este aplicarea o transformare XSLT la ieșirea cererii WSGI Zope 3.
Destul de fericire, cineva pare să fi creat deja un filtru WSGI pentru aplicarea unui stylesheet XSLT. Puteți găsi la http://www.decafbad.com/2005/07/xmlwiki/lib/xmlwiki/xslfilter.py
Dacă ați fi dorit să se aplice acest filtru WSGI pentru Zope 3, v-ar nevoie de trei lucruri:
1. Puneți fișierul xslfilter.py undeva în PYTHONPATH. / Lib / python este un loc bun.
2. Adăugați acest fragment la partea de jos a xslfilter.py:
& Nbsp; def filter_factory (global_conf, ** local_conf):
& Nbsp; filtra def (app):
& Nbsp; a reveni XSLFilter (app)
& Nbsp; filtru de retur
3. Modificați fișier paste.ini, după cum urmează:
& Nbsp; [conducte: Paste.Main]
& Nbsp; conducte = principal XSLT
& Nbsp; [app: principal]
& Nbsp; paste.app_factory = zope.paste.application: zope_publisher_app_factory
& Nbsp; [filtru: XSLT]
& Nbsp; paste.filter_factory = xslfilter: filter_factory
& Nbsp; Ce face acest este de a defini o conductă. Aflați mai multe despre acest lucru pe site-ul PasteDeploy. Consultați sursa de xslfilter.py pentru informații despre cum să treacă o foaie de stil la filtru.
Implementarea Zope 3 pe un server de web-WSGI capabil
zope.paste vă permite să rulați Zope 3 pe orice software server de web-WSGI capabil folosind PasteDeploy. Pentru aceasta nu veți mai avea nevoie de o instanță Zope 3 (deși puteți încă unul), nu te va configura Zope 3 prin zope.conf și nu va începe să utilizați runzope sau zopectl.
Configurarea aplicației
zope.paste oferă o fabrică PasteDeploy compatibil pentru aplicarea editor WSGI Zope 3 și înregistrează o într-un punct de intrare. Prin urmare, putem crea o foarte simplu Zope 3 cerere într-un fișier de configurare PasteDeploy (de ex paste.ini):
[App: principal]
utilizare = ou: zope.paste
site_definition = /path/to/site.zcml
file_storage = /path/to/Data.fs
DEVMODE = pe
In acest caz, se referă la un /path/to/site.zcml site.zcml cunoscute de la o instanță Zope 3. Puteți, de exemplu, a pus paste.ini într-un Zope 3 instanță existente, alături de site.zcml.
Configurarea bazei de date ZODB
În loc de a se referi la o ZODB FileStorage folosind setarea file_storage, puteți configura și backend de baze de date ZODB multiple sau alte într-un fișier de configurare ZConfig-stil (la fel ca zope.conf), de exemplu, următoarele configurează un client ZEO:

& Nbsp;
& Nbsp; localhost Server: 8100
& Nbsp; de stocare 1
& Nbsp; cache-size 20MB
& Nbsp;


Consultați acest fișier de paste.ini acest fel (și șterge setarea file_storage):
db_definition = db.conf
Configurarea serverului
Pentru a putea folosi aplicația noastră Zope, trebuie doar să adăugați o definiție de server. Putem folosi pe cel care vine cu Paste sau PasteScript, mai degrabă:
[Server: principal]
utilizare = ou: PasteScript # wsgiutils
gazdă = 127.0.0.1
port = 8080
Acum putem porni aplicația folosind comanda Paster care vine cu PasteScript:
& Nbsp; Paster servi paste.ini
Middleware WSGI poate fi configurat ca a descris mai sus sau pe site-ul PasteDeploy

Ce este nou în această versiune:.

  • Adăugat suport pentru Python 3.3.
  • renunțat la suportul pentru Python 2.4 și 2.5.
  • suport Eliminat pentru angajarea middleware WSGI în interiorul unei cereri de Zope 3. Numai pornire server bazat pe script este acum suportat.
  • Adaugata o nouă script consolă pentru a rula un server WSGI-pastă configurat și aplicarea.
  • Conform cu standardul aspect proiect ZF.
  • Licență Adaugat și fișier drepturile de autor. De asemenea, declarație drepturile de autor stabilită în antetele fișierelor.
  • Adăugat MANIFEST.in și tox.ini.

Ce este nou în versiunea 0,4:

  • Adauga changelog, reconstruit din busteni SVN și datele de lansare pe PyPI.
  • Suport o opțiune de configurare "caracteristici", în fișierul PasteDeploy INI, care poate conține o listă separată, spațiu de nume facilitate. Acestea pot fi testate în fișiere ZCML cu sintaxa.
  • Anterior singura caracteristica care ar putea fi activată fost "DEVMODE" și a avut propria sa opțiune. Pentru compatibilitate, DEVMODE = pe adaugă o funcție "DEVMODE" la lista facilitate.

Cerințe :

  • Python

Comentarii la zope.paste

Comentariile nu a fost găsit
Adauga comentarii
Porniţi pe imagini!