Seite 1 von 1

Werkzeug / Windows

Verfasst: Freitag 27. Juni 2008, 16:47
von nemomuk
Hallo,

ich möchte nun doch das ganze mit Werkzeug etc. erst lokal auf meinem PC testen. Nun habe ich hier Windows XP mit Python 2.5.2. Nun frage ich mich, ob man das Ganze auch lokal machen kann und im Browser einfach den Pfad zum Ordner angibt ("C:/xxx/WERKZEUG/"), da man ja eigentlich auch keinen Apache braucht. Geht das?

Danke!

Verfasst: Freitag 27. Juni 2008, 17:15
von lunar
Nein. Werkzeug braucht ein wie auch immer geartetes WSGI-Gateway.

Verfasst: Freitag 27. Juni 2008, 17:29
von nemomuk
und was ist das genau?^^

Danke!

Verfasst: Freitag 27. Juni 2008, 18:03
von nemomuk
Nun habe ich auf meinem Server mal unter localhost den server gestartet...

Code: Alles auswählen

Traceback (most recent call last):
  File "/usr/lib/python2.4/site-packages/wsgiref-0.1.2-py2.4.egg/wsgiref/handlers.py", line 92, in run
  File "/var/www/vhosts/qwe/subdomains/python/httpdocs/shorty/application.py", line 26, in __call__
    response = handler(request, **values)
  File "/var/www/vhosts/qwe/subdomains/python/httpdocs/shorty/views.py", line 27, in new
    return render_template('new.html', error=error, url=url)
  File "/var/www/vhosts/qwe/subdomains/python/httpdocs/shorty/utils.py", line 49, in render_template
    return Response(jinja_env.get_template(template).render(**context),
  File "/usr/lib/python2.4/site-packages/Jinja-1.2-py2.4-linux-i686.egg/jinja/environment.py", line 222, in get_template
    return self._loader.load(filename)
  File "/usr/lib/python2.4/site-packages/Jinja-1.2-py2.4-linux-i686.egg/jinja/loaders.py", line 96, in load
    return self.loader.load(self.environment, name, translator)
  File "/usr/lib/python2.4/site-packages/Jinja-1.2-py2.4-linux-i686.egg/jinja/loaders.py", line 292, in load
    tmpl = super(CachedLoaderMixin, self).load(
  File "/usr/lib/python2.4/site-packages/Jinja-1.2-py2.4-linux-i686.egg/jinja/loaders.py", line 183, in load
    ast = self.parse(environment, name, None)
  File "/usr/lib/python2.4/site-packages/Jinja-1.2-py2.4-linux-i686.egg/jinja/loaders.py", line 176, in parse
    source = self.get_source(environment, name, parent)
  File "/usr/lib/python2.4/site-packages/Jinja-1.2-py2.4-linux-i686.egg/jinja/loaders.py", line 424, in get_source
    raise TemplateNotFound(name)
TemplateNotFound: new.html

Bekomme aber diese Fehlermeldung..., Das Template ist aber im angegebenen Verzeichnis...
Was mache ich falsch?

Verfasst: Freitag 27. Juni 2008, 18:06
von mitsuhiko
Finded dada dir oba net. Also nachschauen ob der Pfad wohl passt. Zeig mal wie du den Template Loader erstellst.

Verfasst: Freitag 27. Juni 2008, 18:08
von nemomuk
ich habe es haargenau so wie im Tutorial gemacht...

Verfasst: Freitag 27. Juni 2008, 18:19
von mitsuhiko
dh, in utils.py hast du ein "TEMPLATE_PATH = path.join(path.dirname(__file__), 'templates')"? Ist da ein templates Ordner dann neben utils.py?

Verfasst: Freitag 27. Juni 2008, 19:22
von nemomuk
Wie durch ein Wunder funktioniert es jetzt... kA

Vielen Dank!

Ich bin totaler Neueinsteiger bei WSGI und versuche einfach testweise das ganze auf meinem Server lauffähig zu machen unter Derzeit läuft der Server nur unter localhost:5000, wie bekomme ich es jetzt hin den Server dieser Subdomain zuzuweisen?

Dank!

Verfasst: Freitag 27. Juni 2008, 19:32
von lunar
Indem du deinen Webserver entsprechend konfigurierst. Ohne detailliertere Informationen war das alles, was man dazu sagen kann.

Verfasst: Freitag 27. Juni 2008, 21:42
von nemomuk
Apache/2.2.3 (Debian) mod_python/3.2.10 Python/2.4.4

Was müsste man noch wissen?

Verfasst: Samstag 28. Juni 2008, 11:19
von lunar
SchneiderWeisse hat geschrieben:Was müsste man noch wissen?
Wo dein konkretes Problem liegt. Bisher hat du keine Frage gestellt, die nicht durch einen Blick in die Werkzeug Dokumentation zu beantworten wäre.

Verfasst: Samstag 28. Juni 2008, 13:03
von nemomuk
Das Problem liegt darin, dass das Ganze nicht unter dieser Subdomain funktioniert, da anscheinend Python sich nicht dafür zuständig fühlt (ich weiß nicht, wie das genau geht), diese Dateien dann so auszuführen...

Ich habe die Dateien bereits in das Verzeichnis...


Nur funktioniert das ganze nicht, da der Server anscheinend nicht darauf anspringt. Wenn ich per runserver den Server starte, bekomme ich auch die Mitteilung, dass er an localhost:5000 horcht.

Ich kann mich da schlecht ausdrücken, weil ich leider keine Ahnung von WSGI habe... Ich hoffe mein Problem wurde nun deutlich.

Danke für eure Hilfe!

Verfasst: Samstag 28. Juni 2008, 13:44
von lunar
Per runserver startest du einen _eigenen_ Webserver. Wenn du die WSGI-Anwendung über Apache veröffentlichen willst, dann kannst du das _nicht_ über das Management-Skript tun, sondern über mod_fcgi, mod_wsgi oder (eher unüblich) mod_python.

Dafür musst du Apache korrekt konfigurieren, und im Falle von mod_fcgi und mod_python brauchst du Wrapper (Gateway genannt), die FCGI bzw. mod_python auf WSGI "übersetzen".

Das steht aber alles in der Werkzeug-Dokumentation, die ich verlinkt habe.