PHP-WebProxy keine Bilder mehr

AllOnline

New Member
Hallo,

habe seit neustem auf meinem kleinen Webproxy (ja fertig script gecovert)
prox.webhop.net keine Bilder mehr, wenn ich eine Seite besuche.

Nun hab ich ein paar Fragen;
-generell wodran kann es liegen aber genauer;
- Wird ein falsches Bild aufgerufen?
- Ist die Codierung bzw decodierung falsch

In meinen Logs habe ich u.a. diese Meldung gefunden:
Meldung : fsockopen(): php_network_getaddresses: getaddrinfo failed: Name or service not known

nun das kan an den http liegen oder nicht aber ich hab das auch mit festen sachen ausprobiert, das scheint "nur" der fall zu sein wenn es einer schatz durch die überorüfung zu schlüpfen und eben eine falsche adresse angibt.

Oder wie seht ihr das?

Danke für jede hilfe!
(Meine Kunden laufen mir weg^^ :-( )

Script gibt es da für groben eindruck: SourceForge.net: PHProxy

Im späteren Verlauf zeig ich euch dann gerne ausschntte wo ich was verändert habe.

PS: Jegliche Kommentaren zu Fertig-Script, mach es selbst und was krieg ich dafür könnt ihr euch schenken.
 
Noja... Da steht HTML-Code in den Grafik-"Dateien" ;)

<html>
<head>
<!–[if IE]><style> img {behavior: url(fixnaturalwh.htc)}</style><![endif]–>
<meta http-equiv="Pragma" content="no-cache">
<meta http-equiv="expires" content="0">
</head>
<body onload="docheck()">
<img id="tes" src="a.bidvertiser.&ad_url=.jpg" width="1">
<script language="javascript">

function docheck()
{
var width = parseInt(document.getElementById('tes').naturalWidth);
var widthOpera = parseInt(document.getElementById('tes').width);
var browser = navigator.appName;

if( (browser == "Opear" && widthOpear <= 0) || (browser != "Opear" && width <= 0) )
{
location.href = 'block.html';
}
}
</script>


</body>
</html>‰PNG
(ab hier Binärdaten)
Da wird wohl irgendwo der MIME-Type nicht geprüft und einfach der Code hineingefummelt, vermutlich durch die Funktion zur Anzeige der Adressleiste (diese Mini-URL-Form).

Den letzten Satz habe ich jetzt mal geflissentlich überlesen...
 
Last edited by a moderator:
Wie hast du das rausgefunden

Wie hast du das rausgefunden, der text entspricht dem einfachen adblock-blocker^^

Der ist nun mal auskommentiert, aber ich sehe dennoch keine Bilder.

Also decode die passende Sache, nun nach dem rausnehmen scheint die adresse zustimmen, sehe dennoch keine :-(

edit: Zum Testen kann man die mini-url ja auch ausblenden!
edit2: Irgend wie hängt an manchen Bildern eine 7 dran, wodran kann das liegen?
edit3: mal ein paar kleine stellen wo was mit dem path gemacht wird und eine 7 drinne vorkommt und mir einigermassen sinnig vorkommt^^:
$temp['path'] = str_replace('/%7E', '/~', '/' . ltrim(implode('/', $path), '/'));

// so wird mit Bildern aus dem "alten" Scoure umgegangen:
case 'img':
if (isset($attrs['src']))
{
$rebuild = true;
$attrs['src'] = complete_url($attrs['src']);
}
if (isset($attrs['longdesc']))
{
$rebuild = true;
$attrs['longdesc'] = complete_url($attrs['longdesc']);
}
break;
/////////

function complete_url($url, $proxify = true)
{
$url = trim($url);

if ($url === '')
{
return '';
}

$hash_pos = strrpos($url, '#');
$fragment = $hash_pos !== false ? '#' . substr($url, $hash_pos) : '';
$sep_pos = strpos($url, '://');

if ($sep_pos === false || $sep_pos > 5)
{
switch ($url{0})
{
case '/':
$url = substr($url, 0, 2) === '//' ? $GLOBALS['_base']['scheme'] . ':'
. $url : $GLOBALS['_base']['scheme'] . '://' . $GLOBALS['_base']['host']
. $GLOBALS['_base']['port_ext'] . $url;
break;
case '?':
$url = $GLOBALS['_base']['base'] . '/' . $GLOBALS['_base']['file'] . $url;
break;
case '#':
$proxify = false;
break;
case 'm':
if (substr($url, 0, 7) == 'mailto:')
{
$proxify = false;
break;
}
default:
$url = $GLOBALS['_base']['base'] . '/' . $url;
}
}

return $proxify ? "{$GLOBALS['_script_url']}?{$GLOBALS['_config']['url_var_name']}
=" . encode_url($url) . $fragment : $url;
}
Aber eig. habe ich daran nichts geändert, wenn müsste der garnichts mehr anzeigen.
css geht doch oder nicht?

edit4:
so sieht es aus: //aHR0cDovL3d3dy5iYjRmcmVlLmRlL2Nzcy9waHBiYl9sb2dvLmdpZg%3D%3D
so sollte es aussehen: //aHR0cDovL3d3dy5iYjRmcmVlLmRlL2Nzcy9waHBiYl9sb2dvLmdpZg==
er macht immer die letzten zeichen falsch

Bei anderen stimmt es wiederrum und er zeigt sie net an :-(
Wenn ich die Bilddatei über den proxy selbst aufrufe ist noch mehr murks drinne

Also scheint er entweder die adresse zu verhauen oder in die Bilddatei den eigentlichenlink reinzuschreiben,
woher kommt das?


Danke für die nette Hilfe!
 
Last edited by a moderator:
Back
Top