Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi idhttp htaccess und Proxyserver (https://www.delphipraxis.net/52611-idhttp-htaccess-und-proxyserver.html)

JohannesK 31. Aug 2005 14:08


idhttp htaccess und Proxyserver
 
Hallo

ich habe ein Problem mit dem Zugriff über Proxyserver auf eine mit htaccess geschütze Seite.
Der Zugang funktioniert ohne Proxy problemlos, mit proxy wird die Anmeldeseite für User und Passwort zweimal angezeigt und verlangt damit zweimal die gleiche Eingabe.

Ohne Proxy funktionieren sowohl idhttp.get wie URLDownloadToFIle bei Übergabe der Parameter mit
http://user:password@pfad

Weiss jemand Rat ?

Gruss

JK

JohannesK 31. Aug 2005 15:26

Re: idhttp htaccess und Proxyserver
 
Zumindest mit der Version idhttp.get funktioniert es jetzt, nachdem ich im idhtt.request den Server ergänzt habe.

teekay 20. Okt 2005 15:07

Re: idhttp htaccess und Proxyserver
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo!
... stehe vor dem gleichen Problem wie du

habe eine htaccess geschützte Datei - aber das nur nebenbei

mein Problem ist unser ISA Server 2000 (Proxy) der seit ein paar Tagen läuft

er wurde im Mixed Mode installiert - soll heissen es gibt den firewallclient, den Webproxy Client und den Secure NAT Client

HTTP Protokolle werden über den WebproxyClient behandelt, also erfolgt eine Authentifizierung am ISA Server und der leitet dann die Anfrage weiter

mein Proxy wäre also : meinServer.meineDomain.local oder ebend gleich die IP
und der User : meineDomain\Username und Passwort

Delphi-Quellcode:
with IdHTTP1.ProxyParams do begin
  BasicAuthentication:=true;
  ProxyServer:= 'meinServer.meineDomain.local';
  ProxyPort:=8080;
  ProxyUsername:='meineDomain\Username';
  ProxyPassword:='Passwort';
end;

...

Memo1.Lines.Add(IdHTTP1.Get('http://www.eineSei.te/im/Internet.html')); //ohne htaccess!
In der Anlage mal die Fehlermeldung und hier die Meldung im ISA Server Log:
Zitat:

10.128.6.219 - anonymous Mozilla/3.0 (compatible; FTPClient) - 20.10.2005 - 13:42:03 - Servername - - www.HostName.de - - 80 - - 306 - 2980 - http - GET - http://www.HostName.de:80/InternetSeite.htm - - 407 -
Die 407 am Ende entsricht quasi der Meldung (Anlage)

jetzt meintest du im IdHTTP1.Request hast du den Server eingetragen - Nur wo? bei Host; ProxyConnection (wo eigentlich was anderes reinkommt!?) oder direkt bei connection?

wäre schön wenn du diesen code-Auszug posten könntest

und auch sonst würde mich mal interessieren was ihr so für Erfahrungen mit Proxy / ISA Server gemacht habt (z.B. FTP Connection Mode...) und was mich auch interessiert die Proxy Verb geht ja über Port 8080 - Stellst du das nur in den ProxyParams oder auch in 'IdHTTP1.Port :=8080' ein ??

thx schonmal

mfG TeeKay

JohannesK 24. Okt 2005 10:07

Re: idhttp htaccess und Proxyserver
 
Sorry für die späte Antwort, war in Urlaub :-D .

Spassigerweise braucht man beim Zugang auf die htaccess-geschützte Seite eine mehrfache Übergabe von user und Passwort. Für diesen Fall kann man folgendes vorsehen:

Delphi-Quellcode:
 

// beim Aufrufen des Zugriffs
 
idhttp1.Request.BasicAuthentication := True;
idhttp1.Request.Username := updateuser;
idhttp1.Request.Password := pw;


// wenn Autorisierung erforderlich

procedure TF_AutoUpdate.IdHTTP1SelectAuthorization(Sender: TObject;
  var AuthenticationClass: TIdAuthenticationClass;
  AuthInfo: TIdHeaderList);

begin

   idhttp1.Request.Username := updateuser;
   idhttp1.Request.Password := pw;

end;
Der Server ist eingetragen unter idhttp1.Request.host

Folgende Einstellungen sollten gesetzt sein:
idhttp1.HTTPOptions.hoInProcessAuth auf true
idhttp1.HTTPOptions.hoForceEncodeParams auf true ( bin mir aber nicht wirklich sicher über den Einfluss ! )

Der Proxyport wird nur in den Proxyparams definiert.

Ansonsten sehe ich in Deinem Code nichts was stören könnte.

Ich hoffe das hilft Dir weiter.

teekay 24. Okt 2005 10:58

Re: idhttp htaccess und Proxyserver
 
Hallo

danke für die Antwort.

Mit dem htaccess hatte ich auch schon so meine Erfahrungen ... Scheinbar ist es auch von host zu host unterschiedlich - manchmal muss man sich doppelt authentifizieren und meistens reichen schon die Einstellungen im ...Request

was aber eigentlich mein Problem ist : die Authentifizierung am Proxy. wie oben beschrieben haben wir einen ISA Server der eine Benutzerauthentifizierung verlangt

du hattest geschrieben das du auch am Proxy vorbei musst - wenn das auch mit Benutzer-Authentifikation ist würde mich an der Stelle der Code interessieren - denn das normale :

Delphi-Quellcode:
with IdHttp1 do
begin
  ProxyParams.BasicAuthentication := True;
  ProxyParams.ProxyServer := 'isa-server name / IP';
  ProxyParams.ProxyUsername := UserName;
  ProxyParams.ProxyPassword := Password;
end;
... funktioniert bei mir nicht - es folgt immer die oben beschriebene Fehlermeldung

mfG TeeKay

JohannesK 24. Okt 2005 11:15

Re: idhttp htaccess und Proxyserver
 
Versuch doch mal den manuellen Ablauf bei der Anmeldung am Proxy nachzustellen, möglicherweise gibt es die eine oder andere property in idhttp die da weiterhilft. Mit ISA-Servern habe ich keine Erfahrung, der beschriebene Ablauf hat aber in einigen Fällen bei verschiedenen Proxies funktioniert, grundsätzlich sollten die ja ähnlich funktionieren.

Leider weiss ich an der Stelle auch nicht weiter.

teekay 24. Okt 2005 12:02

Re: idhttp htaccess und Proxyserver
 
... Trotzdem besten Dank.

provisorisch habe ich das ganze so gelöst das ich ohne Authentifizierung auf den Proxy Connecte und im ISA Server die Zieladresse (ist eine ganz bestimmte) unter Webseitenveröffentlichung (als Ausnahme) freigegeben habe
dann ist eine Authentifikation am ISA nicht mehr erforderlich

jedoch ist das wie gesagt nur provisorisch...

wenn noch jemand eine Idee hat - bin ich selbstredend für alles offen

mfG TeeKay


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:17 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