Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi idHttpServer keine Verbindung aus dem Netzwerk (https://www.delphipraxis.net/117443-idhttpserver-keine-verbindung-aus-dem-netzwerk.html)

guidok 18. Jul 2008 08:04


idHttpServer keine Verbindung aus dem Netzwerk
 
Hallo!

Nach anfänglichen Erfolgen bin ich jetzt schon etwas betrübt. Ich habe ein Formular mit einem Indy HTTP Server und war auch ganz happy, dass das so gut funktioniert, aber da war ich wohl etws voreilig.

Wenn ich meinen Server starte und "http://localhost/" in den Explorer tippe, dann funktioniert das hervorragend. Allerdings ist das auch schon alles.

Von einem anderen Rechner im Netzwerk wird anscheinend keine Verbindung aufgebaut. Ich habe die beiden Ereignisse "OnConnect" und "OnDisconnect" programmiert, um zu sehen was läuft und wie schon geschrieben im ersten Fall funzt es super und im zweiten passiert gar nichts. Ports habe ich auch schon diverse andere probiert. Von Seitens unserer IT sollte es eigentlich funktionieren. Ich habe hier auf einem zweiten Rechner Apache installiert und der ist ohne Probleme erreichbar (zwecks Firewall o.ä. falls die Vermutung kommt).

Gerade noch schnell probiert, statt des DNS-Namens direkt die IP einzugeben, hat aber auch keinen Erfolg gehabt.

Hat noch jemand eine Idee?

SirThornberry 18. Jul 2008 08:12

Re: idHttpServer keine Verbindung aus dem Netzwerk
 
ist auf dem zweiten Rechner nur der Apache erreichbar oder auch auf dem wo du deinen Server laufen lässt? Vielleicht hast du ja doch auf diesem Rechner eine Firewall installiert?
Ohne Quelltext etc. ist das ganze ein Rätzelraten. Ich könnte mir höchsten vorstellen das du die Ports des Servers über die Bindings an eine bestimmte IP gebunden hast.

marabu 18. Jul 2008 08:21

Re: idHttpServer keine Verbindung aus dem Netzwerk
 
Moin,

in der Tat ist es oft so, dass die Bindings der Demo übernommen werden und der Server so nur von 127.0.0.1 (localhost) erreichbar ist.

Freundliche Grüße

guidok 18. Jul 2008 09:08

Re: idHttpServer keine Verbindung aus dem Netzwerk
 
Also sehr viel Quelltext ist da noch nicht. Ich habe einfach die Komponente auf die Form gezogen und das wars. Das einzige Stück Quelltext, welches mit dem HTTP Server zu tun hat ist dies:

Delphi-Quellcode:
procedure TfMain.IdHTTPServerCommandGet(AContext: TIdContext;
  ARequestInfo: TIdHTTPRequestInfo; AResponseInfo: TIdHTTPResponseInfo);
var ms : TMemoryStream;
    Requested: String;
    HTML: TStrings;
begin
  meInfo.Lines.Add(ARequestInfo.Command);
  meInfo.Lines.Add(ARequestInfo.Document);

  Requested := ARequestInfo.Document;

  if Requested = '/' then
    Requested := htdocs + 'index.html' //index.html anfordern
  else
    Requested := htdocs + Requested; //anderen content anfordern

  //response senden
  if FileExists(Requested) then
  begin
    //es handelt sich um ein .html file
    if Pos('.html',Requested) > 0 then
    begin
      PageProducer.HTMLDoc.LoadFromFile(Requested);
      AResponseInfo.ContentText := PageProducer.Content;
      AResponseInfo.WriteContent;
    end else
    begin
      ms := TMemoryStream.Create;
      ms.LoadFromFile(Requested);
      AResponseInfo.ContentStream := ms;
      AResponseInfo.WriteContent;
      ms.CleanupInstance;
    end;
  end else
    AResponseInfo.ContentText := 'Die angeforderte Datei existiert nicht: ' + Requested;
end;
Muss ich ggf. noch weitere Einstellungen vornehmen? Bindigs?

marabu 18. Jul 2008 09:10

Re: idHttpServer keine Verbindung aus dem Netzwerk
 
Hast du dir die Demo schon angesehen?

Du kannst deinen Server so konfigurieren, dass er Verbindungen von überall her akzeptiert. Benutze den Property-Editor für Bindings.

guidok 18. Jul 2008 09:47

Re: idHttpServer keine Verbindung aus dem Netzwerk
 
Hallo marabu,

die Bindings habe ich mittlerweile entdeckt. Die Indydemo konnte ich nicht öffnen, bis ich auf die Idee gekommen bin mir die (Eliza)Demo aus dem Web zu laden. Da ist bei den Bindigs allerdings auch nichts eingestellt. Zudem funktioniert die Elizademo auf nur mit localhost... Aber ich habe ja auch keine Vergleichsmöglichkeiten hier.

guidok 18. Jul 2008 12:11

Re: idHttpServer keine Verbindung aus dem Netzwerk
 
Leider bin ich noch nicht weiter gekommen :(

Mit netstat konnte ich immerhin erkennen, dass:

1. Der Port, der gerade eingestellt ist auch frei ist.
2. Nach dem Start des Servers der Port mit Status "ABHÖREN" angezeigt wird.

Funktionieren tut es trotzdem nicht.

Hat schon mal jemand die beiden Indy10 Demos zum Thema HTTP Server ausprobiert und zwar nicht nur mit "localhost"? Hat das auf Anhieb geklappt?


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:58 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz