[WSGI] uploader für colubrid...

Sockets, TCP/IP, (XML-)RPC und ähnliche Themen gehören in dieses Forum
Antworten
Benutzeravatar
jens
Moderator
Beiträge: 8461
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Mittwoch 25. Januar 2006, 09:05

Ich hab meinen Upload mal für colubird umgeschrieben... Aktueller Quellentext:
http://pylucid.python-hosting.com/file/ ... ploader.py

Eine Änderung ist nun, das man die Konfiguration seperat in einer Datei vornehmen kann und nicht mehr das HauptSkript ändern muß... Wie sowas aussieht kann man im Beispiel sehen:
http://pylucid.python-hosting.com/file/ ... example.py


@blackbird: Wie bekomme ich es nun als normales CGI zum laufen?

CMS in Python: http://www.pylucid.org
GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
mitsuhiko
User
Beiträge: 1790
Registriert: Donnerstag 28. Oktober 2004, 16:33
Wohnort: Graz, Steiermark - Österreich
Kontaktdaten:

Mittwoch 25. Januar 2006, 13:32

CGI:

Code: Alles auswählen

python uploader.py genhandler --interface-type cgi
Und das mit dem IE Filename wird auch schon direkt im FILES Parser übernommen. Also musst du das nicht extra nochmal tun.
TUFKAB – the user formerly known as blackbird
Benutzeravatar
jens
Moderator
Beiträge: 8461
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Mittwoch 25. Januar 2006, 13:42

blackbird hat geschrieben:

Code: Alles auswählen

python uploader.py genhandler --interface-type cgi
Das verstehe ich jetzt nicht... Wie soll ich das in einer normalen CGI Umgebung, ohne shell-Accout, machen???
blackbird hat geschrieben:Und das mit dem IE Filename wird auch schon direkt im FILES Parser übernommen. Also musst du das nicht extra nochmal tun.
Das ist gut zu wissen ;)

CMS in Python: http://www.pylucid.org
GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
mitsuhiko
User
Beiträge: 1790
Registriert: Donnerstag 28. Oktober 2004, 16:33
Wohnort: Graz, Steiermark - Österreich
Kontaktdaten:

Mittwoch 25. Januar 2006, 13:44

jens hat geschrieben:
blackbird hat geschrieben:

Code: Alles auswählen

python uploader.py genhandler --interface-type cgi
Das verstehe ich jetzt nicht... Wie soll ich das in einer normalen CGI Umgebung, ohne shell-Accout, machen???
-.-"
Du führst es ja als Entwickler lokal aus :roll:
Und das was er dir ausgibt, speicherst du als "myapplication.cgi" ab.
TUFKAB – the user formerly known as blackbird
Benutzeravatar
jens
Moderator
Beiträge: 8461
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Mittwoch 25. Januar 2006, 13:47

Bei mir passiert überhaupt nix. Keine Ausgaben...

CMS in Python: http://www.pylucid.org
GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
mitsuhiko
User
Beiträge: 1790
Registriert: Donnerstag 28. Oktober 2004, 16:33
Wohnort: Graz, Steiermark - Österreich
Kontaktdaten:

Mittwoch 25. Januar 2006, 13:49

jens hat geschrieben:Bei mir passiert überhaupt nix. Keine Ausgaben...
Du musst für die Datei ausführe, dass ein "app" Objekt hat.
TUFKAB – the user formerly known as blackbird
Benutzeravatar
jens
Moderator
Beiträge: 8461
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Mittwoch 25. Januar 2006, 13:55

Jep, das war es...

Daraus kommt ein recht lange Skript... Kann man das nicht anders machen... d.h. nicht dynamisch erzeugen... Einfach den CGI-Server aus colubird importieren und damit arbeiten??? Der eigentlich code steckt ja schon in ./colubrid/execute.py

CMS in Python: http://www.pylucid.org
GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
Benutzeravatar
jens
Moderator
Beiträge: 8461
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Mittwoch 25. Januar 2006, 13:59

So geht's doch auch:

Code: Alles auswählen

#!/usr/bin/env python
# -*- coding: utf-8 -*-

import os
import sys
from uploader_cfg_example import app
try:
    from uploader_cfg_example import exports
except ImportError:
    exports = {}

from colubrid.execute import CGIServer

if __name__ == "__main__":
    CGIServer(app, exports).run()

CMS in Python: http://www.pylucid.org
GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
mitsuhiko
User
Beiträge: 1790
Registriert: Donnerstag 28. Oktober 2004, 16:33
Wohnort: Graz, Steiermark - Österreich
Kontaktdaten:

Mittwoch 25. Januar 2006, 14:03

Klar kann man. Er kopiert ja auch den Server heraus, nur, dass er keinen Import macht, sondern den Server wirklich rüberzieht.
Aber eigentlich ist es schachmatisch, was ich da mach, ein Import tuts auch.
Werde das dann fixen.
TUFKAB – the user formerly known as blackbird
Benutzeravatar
jens
Moderator
Beiträge: 8461
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Mittwoch 25. Januar 2006, 17:47

So, hab nun eine neue Version gemacht... Diese kann dann auch die Dateien wieder zum Download anbieten:

http://pylucid.python-hosting.com/file/ ... ploader.py

CMS in Python: http://www.pylucid.org
GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
Benutzeravatar
jens
Moderator
Beiträge: 8461
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Donnerstag 26. Januar 2006, 14:52

Also was mir persönlich noch nicht so ganz gefällt ist die process_request() Methode...

Also in PyLucid kann ich ein der Config zu einem Plugin sagen, welche Methoden ausgeführt werden, abhängig vom vorhandensein von POST/GET Daten...

Wäre auch in dem Fall praktisch, was ich ja jetzt so mache:

Code: Alles auswählen

...
if 'download' in self.request.GET:
...
if 'upload' in self.request.FILES:
...
@blackbird: Baust du sowas eigentlich noch ein?

CMS in Python: http://www.pylucid.org
GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
Benutzeravatar
jens
Moderator
Beiträge: 8461
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Mittwoch 1. Februar 2006, 22:18

So, ich hab das ganze mal geupdated... Nun läuft der Uploader als colubrid PathApplication

Aktueller Sourcecode: http://pylucid.python-hosting.com/file/ ... ploader.py

CMS in Python: http://www.pylucid.org
GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
Antworten