CGI für Einsteiger
-
- Beiträge: 6079
- Registriert: Do 21. Sep 2006, 07:51
- OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
- CPU-Target: AVR,ARM,x86(-64)
- Wohnort: Dessau
- Kontaktdaten:
Re: CGI für Einsteiger
fpweb kann durch simples austauschen einer Unit.
selber Webserver,
CGI,
FCGI,
Apache Modul,
sein.
Es ist also überhaupt nicht komplex Webserver mit fpc zu schreiben.
selber Webserver,
CGI,
FCGI,
Apache Modul,
sein.
Es ist also überhaupt nicht komplex Webserver mit fpc zu schreiben.
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/
-
- Beiträge: 3444
- Registriert: Mo 11. Sep 2006, 10:24
- OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
- CPU-Target: X32 / X64 / ARMv5
- Wohnort: Krefeld
Re: CGI für Einsteiger
Meine Kollegen benutzen sehr erfolgreich ISAPI mit Delphi. Damit sich das besser debuggen und pflegen und variabler einsetzen lässt, haben sie eine ISAP "Standard" DLL geschrieben, die "einfach nur" die Schnittstelle zum ISS über ein leicht handhabbares Protokoll zu einem Service vermittelt, der dann die eigentliche Arbeit macht (aber nur als Teil-Aufgabe einer sehr viel Komplexeren Anwendung). Für das "handhabbare Protokoll" haben sie REMObj verwendet, das man mit einer Konfigurations-Einstellung zwischen Windws-intern (per Messages und shared RAM) auf TCP/IP (z.B. zu einem anderen Rechner) umstellen kann.gocher hat geschrieben:Ein einbinden im Apache Webserver ist auch möglich siehe
Da Apache mit FCGI sowieso die Kommunikation mit einem "normalen" Programm (oder Service/Daemon) per TCP/IP beherrscht, warum sollte man dann irgendwelche ISAPI-Methoden verwenden ?
Aber eingfacher zu debuggen, da das Ding dann als normales Lazarus-Programm läuft und mit normalen Mitteln gepflegt werden kann. Später kann man dann den Internen Server abschalten und das Ding als (Apache) CGI laufen lassen. Soweit ich weiß bietet mindestens eine "Toolbox" diese Möglichkeit an, habe ich aber nicht getestet.gocher hat geschrieben: sicherlich gibt es auch noch die Möglichkeit den Webserver selbst zu schreiben, und Dein Programm zu integrieren, das habe ich auch schon gemacht, wäre aber noch komplexer weil noch mehr bedacht werden muss.
(Edit: Ah, Christion nennt da fpWeb ! Das scheint mir sehr interessant zu sein, wenn man nicht gerade ISAPI machen möchte.)
Man kann in vielen Fällen einfach HTML-Code mit einem HTML-WYSIWYG Editor (kostenlos z.B. Microsoft Expression Web 4) erzeugen und ein paar Variablen (die durch selbst definierte Fluchtsymbole gekennzeichnet sind) einbauen. Das CGI Programm liest den HTML-Code aus einer Datei und ersetzt die Variablen mit aktuellen Werten.gocher hat geschrieben: die für die Client-Seite im Regelfall HTML Produzieren soll und dieser HTML-Code muss wiederum im Regelfall von Dir manuell eingegeben werden, wie auch in PHP!
Den Eindruck hatte ich auch (zum Glück konnte ich mich weigern ernsthaft in PHP einzusteigengocher hat geschrieben: Nun schreibe ich auch seit Jahren in PHP, was mir selber nicht gefällt, da es eine wirklich unschöne Sprache ist, in der es so wirkt als wäre sie schlicht weg ohne jedes Konzept entworfen worden

-Michael
-
- Beiträge: 3444
- Registriert: Mo 11. Sep 2006, 10:24
- OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
- CPU-Target: X32 / X64 / ARMv5
- Wohnort: Krefeld
Re: CGI für Einsteiger
Sowas ging mal in Pascal mit Silverlight / Moonlight und "Delphi for .NET".Christian hat geschrieben: Und die Clientseite mit Javascript zu machen.
Dieser Zweig der Entwicklung scheint mir aber ziemlich tot zu sein.
Ich meine mich zu erinnern, dass in der fpc Newsgroup auch mal über die Erzegung von Java Script aus einer fpc quelle diskutiert worden ist (nicht Java Byte Code: das scheint schon ganz ordentlich zu laufen ... vielleicht kann man das sogar vom Browser aufrufen lassen ?!?!?!).
-Michael
- m.fuchs
- Lazarusforum e. V.
- Beiträge: 2807
- Registriert: Fr 22. Sep 2006, 19:32
- OS, Lazarus, FPC: Winux (Lazarus 2.0.10, FPC 3.2.0)
- CPU-Target: x86, x64, arm
- Wohnort: Berlin
- Kontaktdaten:
Re: CGI für Einsteiger
Dieser Tage erst wieder. Es gibt da wohl zwei Ansätze die parallel verfolgt werden:mschnell hat geschrieben:Ich meine mich zu erinnern, dass in der fpc Newsgroup auch mal über die Erzegung von Java Script aus einer fpc quelle diskutiert worden ist [...]
Interesannter fände ich etwas ganz anderes: Dynamische-Webkomponenten, die mir als Entwickler die Programmierung der Javascripts ganz ersparen, weil sie die nötigen Skripte schon mitbringen. Zum Beispiel ein Grid, an welches ich einfach eine Datenquelle hänge. Dann noch in seinen Eigenschaften definieren ob es ein Paging, welche Seitengröße, etc. gibt und es generiert mir automatisch die passenden AJAX-Requests (und implementiert sie auch serverseitig).Michael Van Canneyt hat geschrieben:Why 2 efforts ? The goals of these efforts are not the same:
- The goal of the compiler is to compile all of pascal.
This will result in unreadable javascript, simulating heap memory etc. It will be more comparable to assembler than to hand-written javascript.
- The goal of this project is to generate understandable Javascript.
The idea is not to convert all existing code to work in the browser (depends on the code), but rather to be able to program the browser in Object Pascal.
As a consequence, not all pascal constructs will be supported (pointers, direct memory access jump to mind).
Another matter is that the treshold for understanding the compiler is rather high (I myself don't claim to understand the compiler fully). Whereas I believe that understanding this project should be within reach of everyone that knows object pascal (I may be wrong in this belief, of course )
Both efforts will use the same backend for writing javascript, so the javascript writer and the javascript syntax tree have been kept low-key, meaning that they can be compiled to depend almost exclusively on the system unit (no classes unit, to name but one).
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de
-
- Beiträge: 298
- Registriert: Di 23. Nov 2010, 23:41
- OS, Lazarus, FPC: Ubuntu/Win, Lazarus trunk, FPC trunk
- CPU-Target: 32Bit/64Bit
- Wohnort: Geldern
- Kontaktdaten:
Re: CGI für Einsteiger
Weil ISAPI Schneller ist, zumindest in Verbindung mit dem IIS, übrigens ist die Realisierung einer ISAPI-Extension mit Delphi Bordmitteln eine ziemliche Bremse, dann kann man auch gleich ein CGI schreiben!mschnell hat geschrieben:Meine Kollegen benutzen sehr erfolgreich ISAPI mit Delphi. Damit sich das besser debuggen und pflegen und variabler einsetzen lässt, haben sie eine ISAP "Standard" DLL geschrieben, die "einfach nur" die Schnittstelle zum ISS über ein leicht handhabbares Protokoll zu einem Service vermittelt, der dann die eigentliche Arbeit macht (aber nur als Teil-Aufgabe einer sehr viel Komplexeren Anwendung). Für das "handhabbare Protokoll" haben sie REMObj verwendet, das man mit einer Konfigurations-Einstellung zwischen Windws-intern (per Messages und shared RAM) auf TCP/IP (z.B. zu einem anderen Rechner) umstellen kann.gocher hat geschrieben:Ein einbinden im Apache Webserver ist auch möglich siehe
Da Apache mit FCGI sowieso die Kommunikation mit einem "normalen" Programm (oder Service/Daemon) per TCP/IP beherrscht, warum sollte man dann irgendwelche ISAPI-Methoden verwenden ?
Ich habe ISAPI auch nur als eine Möglichkeit aufgeführt, sicherlich geht das Debuggen auch leichter, aber außer Frage steht doch auch, ob man bei einer ISAPI-DLL auf eine Anfrage (Funktion) eingeht und diese behandelt oder ob man bei einem Webserver zahlreiche Events behandeln muss ist ein erheblicher Unterschied in der Einarbeitung.mschnell hat geschrieben:Aber eingfacher zu debuggen, da das Ding dann als normales Lazarus-Programm läuft und mit normalen Mitteln gepflegt werden kann. Später kann man dann den Internen Server abschalten und das Ding als (Apache) CGI laufen lassen. Soweit ich weiß bietet mindestens eine "Toolbox" diese Möglichkeit an, habe ich aber nicht getestet.gocher hat geschrieben: sicherlich gibt es auch noch die Möglichkeit den Webserver selbst zu schreiben, und Dein Programm zu integrieren, das habe ich auch schon gemacht, wäre aber noch komplexer weil noch mehr bedacht werden muss.
(Edit: Ah, Christion nennt da fpWeb ! Das scheint mir sehr interessant zu sein, wenn man nicht gerade ISAPI machen möchte.)
Übrigens halte ich nichts davon JavaScript durch Pascal zu generieren, da ist es wohl besser einzelne JavaScripts sauber und lesbar zu schreiben und diese dann an passender Stelle einzubauen, WYSIWYG-Editoren sind natürlich für HTML auch eine Lösung aber in Zeiten von Responsive Design auch eher bescheiden!
Aus meiner Sicht sollte man wenn eine saubere Webanwendung entstehen soll, von all dem eine Ahnung haben, für einen Einsteiger in diesen Bereich ist es halt schwer/viel, gerade wenn man zuvor nur mit Drag & Drop von Komponenten gearbeitet hat!
MfG Gocher
akt. Projekt: Webserver(HTTPS HTTP/2) mit integrierten CMS in Free Pascal - www.gocher.me
akt. Projekt: Webserver(HTTPS HTTP/2) mit integrierten CMS in Free Pascal - www.gocher.me
-
- Beiträge: 3444
- Registriert: Mo 11. Sep 2006, 10:24
- OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
- CPU-Target: X32 / X64 / ARMv5
- Wohnort: Krefeld
Re: CGI für Einsteiger
Es gibt mehrere Javascript-basierte Toolkits (da wird der Javascript Code nicht "generiert" sondern komplett aus immer derselben Datei nachgeladen) die es CGI-Programmen möglich machen dynamische Komponenten im Browser zu zeigen (z.B. "EXTJS", es gibt aber wesentlich neuere). Wenn es gelänge, den Lazarus GUI-Editor damit zu verheiraten, so dass man einem normalen Lazarus Projekt durch Setzen einer anderen "WdgetType" Einstellung ein dynamisches CGI zu machen, wäre vielen geholfen, selbst wenn einige visuelle Komponenten ungenau umgesetzt oder nicht verfügbar wären. Mit "EXTPascal" gab es mal so einen Ansatz, der aber anscheinend nicht weiter verfolgt wurde.m.fuchs hat geschrieben:Dynamische-Webkomponenten,
-Michael
Zuletzt geändert von mschnell am So 6. Apr 2014, 12:25, insgesamt 2-mal geändert.
-
- Beiträge: 6079
- Registriert: Do 21. Sep 2006, 07:51
- OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
- CPU-Target: AVR,ARM,x86(-64)
- Wohnort: Dessau
- Kontaktdaten:
Re: CGI für Einsteiger
Ich halte nichts davon das Javascript generieren zu lassen das ist zu komplex als das da sinnvolle sachen bei rumkommen.
Aber ich hab seit nem Jahr die Idee im Hinterkopf nen Pascal Javascript umsetzer zu schreiben das är gar nicht mal so wild, dann könnte man den Clientcode auch in Pascal coden und ein Präprozessor wandelt ds einfach in JS um bevor man die Website hochlädt oder ausliefert. Bisher sind meine Apps aber klein genug als das ich mit Javascript noch ganz zufrieden bin.
Aber ich hab seit nem Jahr die Idee im Hinterkopf nen Pascal Javascript umsetzer zu schreiben das är gar nicht mal so wild, dann könnte man den Clientcode auch in Pascal coden und ein Präprozessor wandelt ds einfach in JS um bevor man die Website hochlädt oder ausliefert. Bisher sind meine Apps aber klein genug als das ich mit Javascript noch ganz zufrieden bin.
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/
-
- Beiträge: 3444
- Registriert: Mo 11. Sep 2006, 10:24
- OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
- CPU-Target: X32 / X64 / ARMv5
- Wohnort: Krefeld
Re: CGI für Einsteiger
Das liegt aber am ISS und nicht an der Delphi etc. (Meine Kollegen sind übrigens sehr zufrieden mit der Lösung.)gocher hat geschrieben:Weil ISAPI Schneller ist, zumindest in Verbindung mit dem IIS, übrigens ist die Realisierung einer ISAPI-Extension mit Delphi Bordmitteln eine ziemliche Bremse, dann kann man auch gleich ein CGI schreiben!
Ich habe mit fpWeb nur vor einigen Jahren mal kurz angeschaut, aber ich glaube nicht, dass man im user-Code diverse Events handeln muss, um ein CGI zu machen. Der selbst geschriebene Code ist ja unabhängig davon, ob man den Webserver einbindet oder die Apache-Anbindung.gocher hat geschrieben: aber außer Frage steht doch auch, ob man bei einer ISAPI-DLL auf eine Anfrage (Funktion) eingeht und diese behandelt oder ob man bei einem Webserver zahlreiche Events behandeln muss ist ein erheblicher Unterschied in der Einarbeitung.
Da magst Du recht haben ! (Wie gesagt habe ich fpWeb lange nicht mehr angefasst. Vielleicht ist es wirklich so einfach wie Christian sagt. Dann bleibt noch HTML zu erzeugen, und da kann es doch tatsächlich nützlich sein, eine Datei mit einem WYSIWYG Editor zu erzeugen, darin Variablen z.B. $$WERT_1$$ vorzusehen und diese dann mit dem Pascal-Programm durch aktuelle Werte zu ersetzen, nachdem man die Datei z.B. mit TStrinList.ReadFromFile eingelesen hat. )gocher hat geschrieben:für einen Einsteiger in diesen Bereich ist es halt schwer/viel, gerade wenn man zuvor nur mit Drag & Drop von Komponenten gearbeitet hat!
-Michael
-
- Beiträge: 298
- Registriert: Di 23. Nov 2010, 23:41
- OS, Lazarus, FPC: Ubuntu/Win, Lazarus trunk, FPC trunk
- CPU-Target: 32Bit/64Bit
- Wohnort: Geldern
- Kontaktdaten:
Re: CGI für Einsteiger
Ok mit der ISS (die Du immer wieder anführst) hatte ich bisher nichts zu tun, ich nutze den Internet Information Services (IIS) von Microsoft, den Apache HTTP Server und einen selbst entwickelten Webserver mit ISAPI Interface.mschnell hat geschrieben: Das liegt aber am ISS und nicht an der Delphi etc. (Meine Kollegen sind übrigens sehr zufrieden mit der Lösung.)
Das unter Delphi existierende Konstrukt (Bordmittel) stellt unzählige Klassen zur Verfügung und setzt auf TISAPIApplication, TWebbroker, stellt TISAPIRequest (abgeleitet von TWebRequest das auch für CGI genutzt wird) und TISAPIResponse (abgeleitet von TWebResponse welches ebenfalls für CGI genutzt wird) und vieles mehr zur Verfügung. Aus meiner Sicht ist nicht Delphi (Object Pascal), sondern diese von mir als Bordmittel bezeichneten Komponenten die einem das Erstellen einer Anwendung sicherlich erleichtern, sind meiner Ansicht die Bremse, das für ein "Hello World" 16ms Antwortzeit auf einen lokalen Server benötigt werden wird einen PHP-Entwickler wohl nicht weiter erschüttern, aber für mich als Pascal Entwickler ist das unvorstellbare Zeitverschwendung wenn ich bedenke, was man in dieser Zeit alles bewältigen könnte.
Unter einen Webserver verstehe ich einen "realen" Webservice der auch optimiert läuft, also wie es unter IIS & Apache durch Konfiguration möglich ist.
Sicherlich stelle ich immer wieder fest das Web-Entwickler schlecht oder nicht optimierte Seiten online stellen, im Zeitalter von Responsive Design, zahllosen Animationen, unzähligen Crawler besuchen, werden so die Vorteile durch Bessere Technik, schnellere Verbindungen immer wieder zur Nichte gemacht.
Zeigt mir bitte die Pascal Komponente die einem Webserver wie dem IIS oder dem Apache nahe kommt ohne das dort zahllose Erweiterungen/Anpassungen nötig sind.
Gerade durch gute performante Entwicklung die halt nicht über einfaches nutzen vorhandener Lösungen, sondern immer wieder nur durch aneignen von Wissen und eigenen Umsetzungen möglich ist, stellt sich daher für mich auch nicht die Frage welche Methode ich verwende, ich nutze wenn möglich immer die schnellste!
Das ist halt ISAPI unter IIS und Apache Modul unter Apache, aber wenn ich diese Methoden (Schnittstellen) nutze wieso sollte ich dann die gewonnene Zeit wieder verschenken? Wenn ich nur etwas entwickeln soll was laufen soll und die Geschwindigkeit irrelevant ist nutze ich auch PHP oder ASP (VB-Script) ist für wenig bis mittel frequentierte Seiten auch in Ordnung.
Übrigens ist eine Scriptsprache wie PHP durch zahlreiche Beispiele im Internet auch für einen Einsteiger der Programmieren kann sehr leicht.
Wenn kein Optimum erforderlich ist reicht oft auch der einfachste Weg!
Aber wie gesagt ich habe nur meine Meinung geäußert und meine Ansichten vorgetragen, das sollte auch nur als weitere Anregung verstanden werden, ich wollte auch nicht kritisieren, denn wie man sein Problem löst ist in erster Linie egal, alles weitere ist die Kür und die wird sowieso meistens nicht bezahlt!
MfG Gocher
akt. Projekt: Webserver(HTTPS HTTP/2) mit integrierten CMS in Free Pascal - www.gocher.me
akt. Projekt: Webserver(HTTPS HTTP/2) mit integrierten CMS in Free Pascal - www.gocher.me
-
- Beiträge: 3444
- Registriert: Mo 11. Sep 2006, 10:24
- OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
- CPU-Target: X32 / X64 / ARMv5
- Wohnort: Krefeld
Re: CGI für Einsteiger
Das kenne ich nicht. Meine Kollegen verwenden REMObj als ISAPI Konnektor und sind sehr zufrieden.gocher hat geschrieben:Das unter Delphi existierende Konstrukt (Bordmittel) stellt unzählige Klassen zur Verfügung
So etwas produktiv einzusetzen kommt im Allgemeinen überhaupt nicht in Frage. Der "eingebaute" Webserver in fpWeb ist meiner Auffassung nach dazu da das Projekt einfach mit Lazarus debuggen zu können und ihn dann für den produktiven durch die Appache-Anbindung (CGI oder FCGI oder Apaqche-Modul) zu ersetzen. Für "Einsteiger" (das wurde hier diskuitiert) ist das unerlässlich, für Fortgeschrittene vermutlich auch hilfreich.gocher hat geschrieben:Zeigt mir bitte die Pascal Komponente die einem Webserver wie dem IIS oder dem Apache nahe kommt ohne das dort zahllose Erweiterungen/Anpassungen nötig sind.
-Michael
Re: CGI für Einsteiger
Ich melde mich mal zurück. Am Wochenende hatte ich leider keine Zeit. Zunächst mal danke für die zahlreichen Beiträge.
Hier nochmal zu mir und meinem Kentnisstand:
Ich programmiere für meinen eigenen Bedarf mit Delphi seit es Delphi gibt. Das sollte ja etwa seit 1990 sein. Derzeit nutze ich Delphi6 Prof. Das geht schon etwas über Komponentenklicken hinaus. Seit es Firebird gibt (2000) programmiere ich SQL. Zunächst habe ich ein paar Firebirdclients mit IBX gebaut. Seit etws 2001 nutze ich dafür IBO. Mit HTML habe ich mal vor Jahren meine Webseite gebastelt. Dafür nutze ich jetzt Joomla. Kenntnis in Java, Javascript ist null.
Mit dieser Vorkenntnis und dem, was ich in diesem Thead bisher gelesen habe, kann meine Lösung ansich nur die sein, dass ich mit Delphi oder Lazarus Pascalcode schreibe, aus dem mir der Compiler ein CGI, FCGI oder ähnliches bastelt. Leider habe ich noch keine Lazarusinstallation mit vollständigen fpweb laufen und kann so die mitgelieferten Demos nicht kompilieren, da einige erforderliche Komponenten nicht eingerichtet sind. Lediglich die Demo combined kann ich kompilieren. Hier nochmal die Frage, gibt es eine Lazarusinstallation, bei der dann alle Komponenten bereits kompiliert und eingerichtet sind?
Meine Hardware besteht aus einem Synology NAS DS 713+ mit DualAtom und Linux64, auf dem auch Firebird läuft. Windows PC und Laptop mit XP Prof., W7 Prof. Handy und Tablet mit Android 4.x. Die Windowsclients mit IBO bleiben, wie sie sind. Es geht hier jetzt zunächst nur um kleine Anwendungen, die auf meinem Samsung Note 10.1 laufen sollen. Das Tablet hat Arm Quardcore 1.4 und 2 GB Ram. Ist also schon ganz gut bestückt.
Zunächst reicht mir eine Anwendung mit einer Tabelle und den Möglichkeiten SELECT, INSERT, UPDATE. Alles weitere werde ich zunächst mit Firebird SP's machen. Wenn das soweit erstmal läuft, sind komplexere Anwendungen eh kein Problem mehr. Schön wäre es, wenn ich auf dem Linux Rechner keinen Webserver installieren muß. Könnte aber später mal folgen, da ich hier jetzt Breitbandkabel mit 50/5 GBit habe. Derzeit läuft meine Webseite noch bei 1und1. Es war die Rede von einer DLL auf dem Server. Der läuft ja mit Linux 64 bit. Läuft das so, wenn alles mit Lazarus/Delphi auf Win32 entwickelt wurde?
K.-D.
Hier nochmal zu mir und meinem Kentnisstand:
Ich programmiere für meinen eigenen Bedarf mit Delphi seit es Delphi gibt. Das sollte ja etwa seit 1990 sein. Derzeit nutze ich Delphi6 Prof. Das geht schon etwas über Komponentenklicken hinaus. Seit es Firebird gibt (2000) programmiere ich SQL. Zunächst habe ich ein paar Firebirdclients mit IBX gebaut. Seit etws 2001 nutze ich dafür IBO. Mit HTML habe ich mal vor Jahren meine Webseite gebastelt. Dafür nutze ich jetzt Joomla. Kenntnis in Java, Javascript ist null.
Mit dieser Vorkenntnis und dem, was ich in diesem Thead bisher gelesen habe, kann meine Lösung ansich nur die sein, dass ich mit Delphi oder Lazarus Pascalcode schreibe, aus dem mir der Compiler ein CGI, FCGI oder ähnliches bastelt. Leider habe ich noch keine Lazarusinstallation mit vollständigen fpweb laufen und kann so die mitgelieferten Demos nicht kompilieren, da einige erforderliche Komponenten nicht eingerichtet sind. Lediglich die Demo combined kann ich kompilieren. Hier nochmal die Frage, gibt es eine Lazarusinstallation, bei der dann alle Komponenten bereits kompiliert und eingerichtet sind?
Meine Hardware besteht aus einem Synology NAS DS 713+ mit DualAtom und Linux64, auf dem auch Firebird läuft. Windows PC und Laptop mit XP Prof., W7 Prof. Handy und Tablet mit Android 4.x. Die Windowsclients mit IBO bleiben, wie sie sind. Es geht hier jetzt zunächst nur um kleine Anwendungen, die auf meinem Samsung Note 10.1 laufen sollen. Das Tablet hat Arm Quardcore 1.4 und 2 GB Ram. Ist also schon ganz gut bestückt.
Zunächst reicht mir eine Anwendung mit einer Tabelle und den Möglichkeiten SELECT, INSERT, UPDATE. Alles weitere werde ich zunächst mit Firebird SP's machen. Wenn das soweit erstmal läuft, sind komplexere Anwendungen eh kein Problem mehr. Schön wäre es, wenn ich auf dem Linux Rechner keinen Webserver installieren muß. Könnte aber später mal folgen, da ich hier jetzt Breitbandkabel mit 50/5 GBit habe. Derzeit läuft meine Webseite noch bei 1und1. Es war die Rede von einer DLL auf dem Server. Der läuft ja mit Linux 64 bit. Läuft das so, wenn alles mit Lazarus/Delphi auf Win32 entwickelt wurde?
K.-D.
-
- Beiträge: 3444
- Registriert: Mo 11. Sep 2006, 10:24
- OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
- CPU-Target: X32 / X64 / ARMv5
- Wohnort: Krefeld
Re: CGI für Einsteiger
Ich vermute die endgültige Applikation soll auf einem Rechner irgendeines Providers laufen. Im Allgemeinen kann man da mit Linux, Apache und MySQL rechnen. (Es gibt natürlich auch ein paar Provider, die auf Windows, IIS und Microsoft SQL aufsetzen.)
Aber erstmal musst Du ja das Programm schreiben und debuggen
Ich würde mit Lazarus und fpWeb anfangen ( -> http://wiki.lazarus.freepascal.org/fcl-web, da ist übrigens auch von HTML-Templates die Rede. Sowas meinte ich mit "Variablen ersetzen") und erstmal den eingebauten HTTP-Server aktivieren. Dann kannst Du dann ein Programm schreiben testen und normal mit Lazarus debuggen. Christian wird Dir sicher über Details besser Auskunft geben können.
Später ersetzt Du dann die Unit mit dem internen HTTP-Server durch die mit "CGI", FCGI" oder "Apache-Modul", ja nach Gusto (ISAPI für IIS geht anscheinend nicht).
Für die Datenbank-Anbindung würde ich ZEOS nehmen. Du solltest Dir dann nur eine Datenbank (z.B. MySQL) lokal installieren, damit Du testen kannst.
Ob und wie Dein Internet Provider es zulässt ein binäres Executable als CGI, FCGI oder Apache Modul auf dem Server zu installieren musst Du u. U. im Vorfeld abklären. Die sind meist nur auf PHP eingestellt. Ich hatte bei einem Test eines trivialen fpc-CGIs bei Freenet aber kein Problem. Das ging einfach via FTP und SSH.
-Michael
Aber erstmal musst Du ja das Programm schreiben und debuggen
Ich würde mit Lazarus und fpWeb anfangen ( -> http://wiki.lazarus.freepascal.org/fcl-web, da ist übrigens auch von HTML-Templates die Rede. Sowas meinte ich mit "Variablen ersetzen") und erstmal den eingebauten HTTP-Server aktivieren. Dann kannst Du dann ein Programm schreiben testen und normal mit Lazarus debuggen. Christian wird Dir sicher über Details besser Auskunft geben können.
Später ersetzt Du dann die Unit mit dem internen HTTP-Server durch die mit "CGI", FCGI" oder "Apache-Modul", ja nach Gusto (ISAPI für IIS geht anscheinend nicht).
Für die Datenbank-Anbindung würde ich ZEOS nehmen. Du solltest Dir dann nur eine Datenbank (z.B. MySQL) lokal installieren, damit Du testen kannst.
Ob und wie Dein Internet Provider es zulässt ein binäres Executable als CGI, FCGI oder Apache Modul auf dem Server zu installieren musst Du u. U. im Vorfeld abklären. Die sind meist nur auf PHP eingestellt. Ich hatte bei einem Test eines trivialen fpc-CGIs bei Freenet aber kein Problem. Das ging einfach via FTP und SSH.
-Michael
Re: CGI für Einsteiger
Nein, diese Anwendungen werden unbedingt Firebird nutzen und nicht bei einem Provider laufen. Die eigene Anbindung ist ja schnell. Die Installation von Firebird auf einem Rechner bei einem Provider geht ansich ja nur auf einem Mietserver. Ich möchte die Datenbanken auch nicht irgendwo im Web haben. Vom eigenen Server über SSL ist mir das schon lieber.
Wenn ich erstmal so weit bin, dass ich ein CGI, FCGI oder Apache-Modul zusammen gebastelt habe, dann ist das Ding ja fast durch. Zunächst müßte ich mal fpweb komplett laufen haben.
K.-D.
Wenn ich erstmal so weit bin, dass ich ein CGI, FCGI oder Apache-Modul zusammen gebastelt habe, dann ist das Ding ja fast durch. Zunächst müßte ich mal fpweb komplett laufen haben.
K.-D.
Re: CGI für Einsteiger
@mschnell,
wenn ich kdf richtig verstanden habe dann läuft seine Hauptanwendung auf Firebird und soll auch da bleiben Dann kannst afaik jeden Provider vergessen, ich kenne keinen der Firebird anbietet.
Qkdf,
wenn ich dich richtig vertanden habe, dann willst du von deinen Mobilgeräten auf Firebird zugreifen der auf deinem eigenen PC/Server läuft?
hde
wenn ich kdf richtig verstanden habe dann läuft seine Hauptanwendung auf Firebird und soll auch da bleiben Dann kannst afaik jeden Provider vergessen, ich kenne keinen der Firebird anbietet.
Qkdf,
wenn ich dich richtig vertanden habe, dann willst du von deinen Mobilgeräten auf Firebird zugreifen der auf deinem eigenen PC/Server läuft?
hde
Re: CGI für Einsteiger
ja, genau @hde.
K.-D.
K.-D.