Seite 1 von 1

Programme Start über Webserver

Verfasst: Donnerstag 25. Oktober 2007, 08:17
von hpa
Hallo,

müssen Programme eigentlich eine besondere Form haben wenn sie über einen Webserver aufgerufen werden?

Ich habe nämlich jetzt einen Apache auf Linux Debian aufgesetzt und das Modpython Testprogramm läuft auch einwandfrei aber meine anderen Programme nicht. Hier die Programm Beispiele

Test Programm funktioniert am Webserver einwandfrei

Code: Alles auswählen

#! /usr/bin/env python2
#-*- coding: latin-1 -*-
from mod_python import apache

def index(req,text='kein text'):
	req.content_type = "text/html"
	req.write("INPUT: %s"%text)
anderes Programm funkrioniert nicht am Webserver sonst ohne Probleme

Code: Alles auswählen

#! /usr/bin/env python2
# -*- coding: cp1252 -*-

import time

def do_timing():
	for s in range(1):
		totaltime = 0
		starttime = time.clock


		zeros = []
		for i in range (1000000):
			zeros.append('0')

		
		stoptime = time.clock()
		elapsed = stoptime-starttime
		totaltime = totaltime+elapsed
		print "Laufzeit des Programms %.3f sec " % (totaltime)
do_timing() 

Danke für eure Hilfe ( Einrückungen passen hier natürlich nicht :) )

Edit (BlackJack): Codetags hinzugefügt.

Verfasst: Donnerstag 25. Oktober 2007, 08:33
von BlackJack
Da gibt's ja wohl offensichtliche Unterschiede. Wie wäre es wenn Du mal die Dokumentation liest.

Beim ersten Skript hast Du eine Funktion mit dem Namen `index()`, die Du nicht aufrufst, die aber trotzdem ausgeführt wird. Und der Text, der auf der Webseite erscheint wird mit `req.write()` ausgegeben.

Im zweiten Skript gibt's keine `index()` Funktion, was ruft der Webserver denn dann auf!? Und wo landen die ``print``-Ausgaben wenn es doch keine Konsole gibt.

Verfasst: Donnerstag 25. Oktober 2007, 10:26
von hpa
Ok danke.

Verfasst: Donnerstag 25. Oktober 2007, 10:48
von keppla
nur der vollständigkeit halber, google mal nach wsgi, da macht man sich das leben sehr viel leichter, als mit rohem mod_python, finde ich.

Verfasst: Donnerstag 25. Oktober 2007, 20:29
von Leonidas
Bei der Gelegenheit kannst du auch nach FastCGI suchen, damit macht man sich das Leben ebenfalls einfacher als mit mod_python. Und es funktioniert mit WSGI.

Warum ich das zur Sprache bringe? Weil du früher oder Später hier eine Frage zu mod_python stellen wirst, die darauf hinausläuft, dass du besser FastCGI benutzt hättest.

Verfasst: Donnerstag 25. Oktober 2007, 21:31
von Joghurt
Bei der Gelegenheit kannst du auch gleich nach Djangoproject oder TurboGears suchen. Für Hardcore-Fans gibt es auch noch Zope ;-)

Verfasst: Donnerstag 25. Oktober 2007, 22:13
von BlackJack
Vielleicht auch `CherryPy` um mal etwas zwischen total low-level und grossem Framework zu nennen.

Verfasst: Freitag 26. Oktober 2007, 10:44
von Leonidas
Joghurt hat geschrieben:Für Hardcore-Fans gibt es auch noch Zope ;-)
Also mit Grok scheint Zope3 sogar für normale Python-User sogar interessant zu werden. Ich hoffe wirklich, dass ich mal dazu komme, damit was zu machen.