• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Dynamischen Content direkt vom Webserver aus produzieren

Stefan-S

Neues Mitglied
Ich habe ein kleines Problem, so richtig in das Thema reinzukommen (denn grundsätzlich ist das Problem sicherlich schon gelöst).

Es geht darum, dass ich Teile einer Webseite dynamisch aufbauen möchte. Dabei soll die Dynamik aber nicht vom Client abhängen, sondern von Gegegebenheiten auf dem Webserver (z.B. Änderungen in Dateistruktur oder in einer Datenbank).
Als Beispiel wäre jetzt mal eine Liste, die erweitert werden soll, wenn in der Datenbank auf dem Webserver ein neuer Eintrag hinzukommt (möglichst auch, während die Seite gerade angezeigt wird).

Ich stoße bei diesem Thema immer auf Dinge wie php und cgi. Wobei php irgendwie einen schlechten Ruf zu haben scheint (+ ein wenig wie Kanonen auf Spatzen für mein Problem wirkt) und cgi als langsam und veraltet gilt.

Daher nun meine Frage. Was sollte ich einsetzen, wenn nur bestimmte Bereiche einer Website dynamischen Content haben sollen? Gibt es da ganz andere Sachen oder wäre eines der oben genannten Dinge doch passend für mich?

Super wäre übrigens, wenn das Ganze auch mit dem nginx Webserver kompatibel ist.

Danke für jede Hilfe =)


(Falls es ein besseres Forum für die Frage gibt, kann der Thread auch gerne geschoben werden.)
 
PHP hat nur deshalb einen schlechten Ruf, weil jeder Wald- und Wiesen-Hobby-Programmierer meint, er könnte damit Scripte schreiben. Und leider hat ja fast jeder Webspace mittlerweile PHP zur Verfügung und somit entsteht massenhaft Schrott. Man kann aber auch mit PHP ordentlich Programmieren, nur leider tun das die wenigsten.
 
Also prinzipiell: Wenn du Seitenteile dynamisch nachladen willst, greife auf AJAX zurück. Dabei ist es egal, ob du auf eine Datei zugreifst oder auf ein Skript.

Die Vorurteile gegenüber PHP oder CGI's kannst du streichen ;) Der Vorteil, den PHP bietet, ist die enorme Community, die dahinter steht, und dadurch einen leichteren Einstieg gewährt. Aber auch syntaktisch ist PHP einfacher, jedenfalls empfinde ich das so ;)
 
Hmm ok, dann könnte ich php ja mal eine Chance geben :) Habe ich das richtig verstanden, dass ich dann Ajax zusätzlich benutze um Aktualisierungen die sich aus dem php Script ergeben an den User zu pushen?
 
AJAX = Asynchronous JavaScript and XML ;)

Es wird nur benötigt, wenn du Daten auf einer Website asynchron laden möchtest, ohne die Seite neu zu laden. Und in dem Fall würdest du die Daten pollen statt pushen, da der AJAX-Request vom Client kommt ;)
 
Hmm ok, somit muss ich mit dem Client pollen um Veränderungen mitzukriegen?
Mit php kann ich also nicht über ein push einen neuen Datenbankeintrag als neu darzustellenden Listeneintrag hinzufügen?
 
Nein, da du vom Webserver keine Informationen an den Client schicken kannst, da der Webserver nicht weiß, wohin damit. Der Client schickt einen Request an den Webserver, und damit ist der Kanal offen.

Du kannst das ganze aber so programmieren, dass alle 10 Sekunden o.ä. mit einem Poll geprüft wird, ob neue Daten vorhanden sind und wenn ja, gibst du sie gleich mit zurück ;)
 
Klingt auch ganz interessant, allerdings weiß ich net, ob ich bei dein Clients immer eine dauerhafte Verbindung voraussetzen kann.

Kennt eigentlich jemand web2py und kann dazu was sagen? Habs bei der Forensuche nicht gefunden. Scheint ja nicht allzu verbreitet zu sein, klingt aber nach ner netten Alternative.
 
Gut, das Polling ist dennoch die einfachste Methode, alles andere ist aufwendiger oder muss am Ende doch mit irgendeiner Art Polling abgesichert werden. Wenn du nicht fit in Flash Sockets oder HTML 5 Websockets bist, bleiben im Prinzip nicht mehr viele Möglichkeiten übrig ^^

Noch was nützliches, was ich dazu gefunden habe: Comet! Was ist das? > Programmierung Blog | PC.DE

Zu web2py: Noch nie gehört, kurz draufgeschaut, für mich uninteressant, kann ich nix zu sagen ;)
 
Zurück
Oben