Python im Web für PHP-Umsteiger

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

Montag 30. April 2007, 22:16

Daran hab ich eigentlich noch garnicht gedacht. Allerdings hab ich andere Baustellen bei PyLucid ;)

Das mit dem Passwort in der URL stimmt schon, aber wie sonst absichern? Einfach kein Passwort? Ist auch doof... Eine .htaccess anlegen ist auch nicht jedermanns Sache...
Ich hatte das ganze schon mal Überlegt: http://pylucid.org/phpBB2/viewtopic.php?t=68

CMS in Python: http://www.pylucid.org
GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
_kosmos_
User
Beiträge: 8
Registriert: Montag 30. April 2007, 15:41

Dienstag 1. Mai 2007, 11:04

So, ich wollte gerade Colurbrid ausprobieren....

Leider wenig erfolgreich. Meine ctest.cgi sieht so aus:

Code: Alles auswählen

#!/usr/bin/env python

from colubrid import BaseApplication, HttpResponse, execute
import os, sys


sys.path.append("/Library/Frameworks/Python.framework/Versions/Current/bin/")
sys.path.append("/Library/Frameworks/Python.framework/Versions/2.4/lib/python2.4/site-packages/")


class MyApplication(BaseApplication):

    def process_request(self):
        name = self.request.args.get('name', 'World')
        response = HttpResponse('Hello %s!' % name)
        response['Content-Type'] = 'text/plain'
        return response

app = MyApplication

if __name__ == '__main__':
    execute(app)
Und das gibt mein Apache als Fehlermeldung aus:

Code: Alles auswählen

[Tue May 01 12:03:41 2007] [error] [client 127.0.0.1] Traceback (most recent call last):
[Tue May 01 12:03:41 2007] [error] [client 127.0.0.1]   File "/Applications/MAMP/cgi-bin/ctest.py", line 22, in ?
[Tue May 01 12:03:41 2007] [error] [client 127.0.0.1]     execute(app)
[Tue May 01 12:03:41 2007] [error] [client 127.0.0.1]   File "/Applications/MAMP/cgi-bin/colubrid/server.py", line 80, in execute
[Tue May 01 12:03:41 2007] [error] [client 127.0.0.1]     run()
[Tue May 01 12:03:41 2007] [error] [client 127.0.0.1]   File "/Applications/MAMP/cgi-bin/colubrid/server.py", line 63, in <lambda>
[Tue May 01 12:03:41 2007] [error] [client 127.0.0.1]     run = lambda: httpserver.serve(app, host=hostname, port=str(port))
[Tue May 01 12:03:41 2007] [error] [client 127.0.0.1]   File "/Library/Python/2.3/site-packages/Paste-0.9.7-py2.3.egg/paste/httpserver.py", line 578, in serve
[Tue May 01 12:03:41 2007] [error] [client 127.0.0.1]     
[Tue May 01 12:03:41 2007] [error] [client 127.0.0.1] ssl_context, int(threadpool_workers))
[Tue May 01 12:03:41 2007] [error] [client 127.0.0.1]   File "/Library/Python/2.3/site-packages/Paste-0.9.7-py2.3.egg/paste/httpserver.py", line 463, in __init__
[Tue May 01 12:03:41 2007] [error] [client 127.0.0.1]     
[Tue May 01 12:03:41 2007] [error] [client 127.0.0.1] RequestHandlerClass, ssl_context)
[Tue May 01 12:03:41 2007] [error] [client 127.0.0.1]   File "/Library/Python/2.3/site-packages/Paste-0.9.7-py2.3.egg/paste/httpserver.py", line 445, in __init__
[Tue May 01 12:03:41 2007] [error] [client 127.0.0.1]     
[Tue May 01 12:03:41 2007] [error] [client 127.0.0.1] RequestHandlerClass, ssl_context)
[Tue May 01 12:03:41 2007] [error] [client 127.0.0.1]   File "/Library/Python/2.3/site-packages/Paste-0.9.7-py2.3.egg/paste/httpserver.py", line 266, in __init__
[Tue May 01 12:03:41 2007] [error] [client 127.0.0.1]     HTTPServer.__init__(self, server_address, RequestHandlerClass)
[Tue May 01 12:03:41 2007] [error] [client 127.0.0.1]   File "/System/Library/Frameworks/Python.framework/Versions/2.3/lib/python2.3/SocketServer.py", line 330, in __init__
[Tue May 01 12:03:41 2007] [error] [client 127.0.0.1]     self.server_bind()
[Tue May 01 12:03:41 2007] [error] [client 127.0.0.1]   File "/System/Library/Frameworks/Python.framework/Versions/2.3/lib/python2.3/BaseHTTPServer.py", line 100, in server_bind
[Tue May 01 12:03:41 2007] [error] [client 127.0.0.1]     SocketServer.TCPServer.server_bind(self)
[Tue May 01 12:03:41 2007] [error] [client 127.0.0.1]   File "/System/Library/Frameworks/Python.framework/Versions/2.3/lib/python2.3/SocketServer.py", line 341, in server_bind
[Tue May 01 12:03:41 2007] [error] [client 127.0.0.1]     self.socket.bind(self.server_address)
[Tue May 01 12:03:41 2007] [error] [client 127.0.0.1]   File "<string>", line 1, in bind
[Tue May 01 12:03:41 2007] [error] [client 127.0.0.1] socket.error: (48, 'Address already in use')
[Tue May 01 12:03:41 2007] [error] [client 127.0.0.1] Premature end of script headers: ctest.py

Wie es aussieht, will ctest.py – obwohl im CGI-Kontext aufgerufen – einen eigenen Server starten. Warum? Wer kann helfen?


Liebe Grüße
_kosmos_
Leonidas
Administrator
Beiträge: 16024
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Dienstag 1. Mai 2007, 12:17

Du musst ja auch Colubrid über einen WSGI-Gateway wie ``flup`` an Apache einbinden. So wie du es jetzt gemacht hast, startet es ja einen eigenen Server.
Wie man sowas einrichtet steht hier. Leider ist das flup trac down, aber runterladen kannst du es ja auch direkt vom Server.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
Antworten