php.de

Zurück   php.de > Webentwicklung > PHP-Fortgeschrittene

PHP-Fortgeschrittene Arbeiten mit PHP ohne Einschränkungen

Antwort
 
LinkBack Themen-Optionen Bewertung: Bewertung: 1 Stimmen, 5,00 durchschnittlich.
Alt 21.06.2011, 13:16  
Neuer Benutzer
 
Registriert seit: 11.05.2011
Beiträge: 16
PHP-Kenntnisse:
Fortgeschritten
El Gohr befindet sich auf einem aufstrebenden Ast
Standard https-URL per fsockopen über Proxy öffnen

Aloha,
der Titel hört sich nicht nur schwierig an, ist er auch
Ich möchte die Seite https://www.abgabenrechner.de/interface/2011.jsp über einen Proxy, durch fsockopen öffnen.
Das Öffnen einer normalen http:// funktioniert ohne Probleme. Bei der angesprochenen Seite bekomme ich ein HTTP 200 Ok, es wird mir allerdings nur der Text "Redirect" angezeigt (ohne Link oder ähnliches) -> Widerspricht sich irgendwie oder?
Der Code ist angefügt
PHP-Code:
<?php
/***************************************************************************************************************************\
*
*     httpConnector.php provides Web-Content for local requests.
*
\***************************************************************************************************************************/

class HttpClient {
    
    public static function 
getRemoteContentAsString($request_url ""$proxy_name ""$proxy_port ""$proxy_user ""$proxy_pass ""){
        if(!
strstr($request_url,"http://")||!strstr($request_url,"https://"))$request_url "http://".$request_url//warrants http usage
        
$proxy_cont ""//represents the content of the requested url
        
$proxy_fp fsockopen($proxy_name$proxy_port); //opens a connection to the proxy server
        
if (!$proxy_fp) return false//if no connection could be established, return false
        
fputs($proxy_fp"GET $request_url HTTP/1.0\r\nHost: $proxy_name\r\n"); //change the requested url of the http-header using the established connection
        
if(!empty($proxy_user)||!empty($proxy_pass)) //if there are login credentials
        
fputs($proxy_fp"Proxy-Authorization: Basic "base64_encode ("$proxy_user:$proxy_pass")."\r\n\r\n"); //add the proxy authentication
        
while(!feof($proxy_fp)){ //get the website-content, until EOF
            
$proxy_cont .= fread($proxy_fp,4096); //read the content out of the buffer
        
}
        
fclose($proxy_fp); //close the connection
        
$proxy_cont substr($proxy_contstrpos($proxy_cont,"\r\n\r\n")+4); //clean the content
        
return $proxy_cont//return the content
    
}
}
?>
PHP-Code:
<?php
require_once "httpConnector.php";

$url "https://www.abgabenrechner.de/interface/2011.jsp";
$proxy_name PROXY;
$proxy_port PORT;
$proxy_user USER;
$proxy_pass PASSWORD;

echo 
HttpClient::getRemoteContentAsString($url$proxy_name$proxy_port$proxy_user$proxy_pass);
?>
El Gohr ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 21.06.2011, 15:16  
Erfahrener Benutzer
 
Registriert seit: 19.06.2009
Beiträge: 837
PHP-Kenntnisse:
Fortgeschritten
Jens Clasen ist einfach richtig nettJens Clasen ist einfach richtig nettJens Clasen ist einfach richtig nettJens Clasen ist einfach richtig nettJens Clasen ist einfach richtig nett
Standard

Warum um Himmels willen nimmst Du nicht einfach den Fopen-Wrapper dafür? Der verarbeitet Redirects selbst schon richtig und er kann mit Proxies umgehen.

Gruß Jens
Jens Clasen ist offline   Mit Zitat antworten
Alt 21.06.2011, 16:12  
Erfahrener Benutzer
 
Registriert seit: 01.09.2010
Beiträge: 4.561
PHP-Kenntnisse:
Fortgeschritten
eagle275 ist ein sehr geschätzer Menscheagle275 ist ein sehr geschätzer Menscheagle275 ist ein sehr geschätzer Mensch
Standard

wenn sich httpS(S wie SECURE) sooo einfach überlisten lassen würde .. .dann hätte man es vermutlich nie zum Standard erkoren ....

das ist Absicht, dass du zwar eine erfolgreiche Verbindung bestätigt bekommst, aber nicht auf die eigentlichen Daten zugreifen kannst ...
__________________
"Irren ist männlich", sprach der Igel und stieg von der Drahtbürste
eagle275 ist offline   Mit Zitat antworten
Alt 21.06.2011, 19:22  
Moderator¹
 
Registriert seit: 28.03.2010
Beiträge: 7.470
PHP-Kenntnisse:
Fortgeschritten
ChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer Anblick
Standard

Zitat:
Zitat von eagle275 Beitrag anzeigen
wenn sich httpS(S wie SECURE) sooo einfach überlisten lassen würde .. .dann hätte man es vermutlich nie zum Standard erkoren ....
Was hat denn das Aufbauen und Abfragen über eine gesicherte Verbindung mit „überlisten“ zu tun ...?

Zitat:
das ist Absicht, dass du zwar eine erfolgreiche Verbindung bestätigt bekommst, aber nicht auf die eigentlichen Daten zugreifen kannst ...
Das ist Quatsch.
__________________
RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
ChrisB ist offline   Mit Zitat antworten
Alt 21.06.2011, 19:56  
hts
Erfahrener Benutzer
 
Registriert seit: 07.09.2010
Beiträge: 722
PHP-Kenntnisse:
Fortgeschritten
hts befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von El Gohr Beitrag anzeigen
Bei der angesprochenen Seite bekomme ich ein HTTP 200 Ok, es wird mir allerdings nur der Text "Redirect" angezeigt (ohne Link oder ähnliches) -> Widerspricht sich irgendwie oder?
Ich findes, es widerspricht sich, dass du einen Statuscode erhältst, aber in deinem PHP-Code die Header explizit ausschneidest.
hts ist offline   Mit Zitat antworten
Alt 22.06.2011, 07:48  
Neuer Benutzer
 
Registriert seit: 11.05.2011
Beiträge: 16
PHP-Kenntnisse:
Fortgeschritten
El Gohr befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von hts Beitrag anzeigen
Ich findes, es widerspricht sich, dass du einen Statuscode erhältst, aber in deinem PHP-Code die Header explizit ausschneidest.
Habe mir den Request per Firebug angeschaut, daher komme ich auch an den Header
El Gohr ist offline   Mit Zitat antworten
Alt 22.06.2011, 08:24  
Neuer Benutzer
 
Registriert seit: 11.05.2011
Beiträge: 16
PHP-Kenntnisse:
Fortgeschritten
El Gohr befindet sich auf einem aufstrebenden Ast
Standard

Ok, gehen wir mal nach dem Ausschlussprinzip:
Code:
Warning: file_get_contents(https://www.abgabenrechner.de/interface/2011.jsp) [function.file-get-contents]: failed to open stream: Cannot connect to HTTPS server through proxy
El Gohr ist offline   Mit Zitat antworten
Alt 22.06.2011, 08:25  
Neuer Benutzer
 
Registriert seit: 11.05.2011
Beiträge: 16
PHP-Kenntnisse:
Fortgeschritten
El Gohr befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Jens Clasen Beitrag anzeigen
Warum um Himmels willen nimmst Du nicht einfach den Fopen-Wrapper dafür? Der verarbeitet Redirects selbst schon richtig und er kann mit Proxies umgehen.

Gruß Jens
Code:
Warning: fopen(https://www.abgabenrechner.de/interface/2011.jsp) [function.fopen]: failed to open stream: Cannot connect to HTTPS server through proxy
Soviel zu deiner Aussage.

Geändert von El Gohr (22.06.2011 um 08:31 Uhr).
El Gohr ist offline   Mit Zitat antworten
Alt 22.06.2011, 08:45  
Erfahrener Benutzer
 
Registriert seit: 19.06.2009
Beiträge: 837
PHP-Kenntnisse:
Fortgeschritten
Jens Clasen ist einfach richtig nettJens Clasen ist einfach richtig nettJens Clasen ist einfach richtig nettJens Clasen ist einfach richtig nettJens Clasen ist einfach richtig nett
Standard

Das liegt dann aber an Deiner PHP-Version. Ich hab mich grad noch mal vergewissert, dass mein Gedächtnis mich nicht im Stich lässt und der notwendige Quellcode ist in den aktuellsten Sourcen im Fopen-Wrapper implementiert - wenn auch erst seit Januar.

Ich würd trotzdem an Deiner Stelle erst mal alle vorgefertigten Extensions durchtesten, bevor ich mich da selbst ran mache. cURL währe jetzt z.B. noch offen, das ist ja auch recht mächtig.

Gruß Jens
Jens Clasen ist offline   Mit Zitat antworten
Alt 22.06.2011, 08:53  
Neuer Benutzer
 
Registriert seit: 11.05.2011
Beiträge: 16
PHP-Kenntnisse:
Fortgeschritten
El Gohr befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Jens Clasen Beitrag anzeigen
Das liegt dann aber an Deiner PHP-Version. Ich hab mich grad noch mal vergewissert, dass mein Gedächtnis mich nicht im Stich lässt und der notwendige Quellcode ist in den aktuellsten Sourcen im Fopen-Wrapper implementiert - wenn auch erst seit Januar.

Ich würd trotzdem an Deiner Stelle erst mal alle vorgefertigten Extensions durchtesten, bevor ich mich da selbst ran mache. cURL währe jetzt z.B. noch offen, das ist ja auch recht mächtig.

Gruß Jens
PHP Version 5.3.1 -> ab welcher PHP Version ist es implementiert?

cURL steht aussen vor, da serverseitig eine Shell geöffnet werden kann...

Geändert von El Gohr (22.06.2011 um 09:02 Uhr).
El Gohr ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Cookie im Internet Explorer über https bearbeiten farant PHP Tipps 2009 5 15.03.2010 20:02
Probleme mit SOAP über HTTPS - Timeouts soesti PHP Tipps 2009 0 30.09.2009 14:44
[Erledigt] PHP file_get_contents über Proxy verschleiern Destruction PHP-Fortgeschrittene 3 16.08.2009 17:33
URL über Textfeld im Layer öffnen vollmilch JavaScript, Ajax und mehr 2 20.07.2009 11:49
Externe Datei über GET mit fopen öffnen moercel PHP Tipps 2009 20 16.02.2009 21:38
Wie am besten speziellen Proxy realisieren? R4v3r Server, Hosting und Workstations 1 06.02.2009 10:19
XML Datei über Proxy holen PHP Tipps 2006 16 21.02.2006 13:47
Remote öffnen von txt über php? PHP-Fortgeschrittene 6 08.11.2005 22:58
Mit Apache über einen Proxy auf externe quellen zugreifen Server, Hosting und Workstations 4 24.10.2005 13:23
Anfängerfrage zu Apache über Proxy Server, Hosting und Workstations 16 16.09.2005 13:23
Sicherheitsrisiken fopen über https und authorization? PHP-Fortgeschrittene 3 12.09.2005 17:28
[Erledigt] fsockopen über socks proxy PHP-Fortgeschrittene 1 17.03.2005 09:38
PHP-HTTP-Browser über Proxy DerDesian PHP Tipps 2005 5 03.03.2005 00:27
neues Fenster, mit voher definierter Größe, über Link öffnen HTML, Usability und Barrierefreiheit 7 21.06.2004 12:43
IE session und proxy über http 1.1 PHP-Fortgeschrittene 3 08.06.2004 18:16

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
fsockopen https, fsockopen proxy, url per proxy aufrufen php, url über proxy aufrufen browser, failed to open stream: cannot connect to https server through proxy, \cannot connect to https server through proxy\, \cannot connect to https server through proxy \, url über proxy aufrufen, cannot connect to https server through proxy, php fsockopen via proxy, jsp via proxy, fsockopen proxy-authorization and basic authentication ssl, fsockopen ssl proxy, proxy https fsockopen, eine webseite über proxy aufrufen, url per proxy aufrufen, url im proxy ofnen, php fsockopen url, fsockopen ssl external url, php url über proxy aufrufen

Alle Zeitangaben in WEZ +2. Es ist jetzt 00:58 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum