Een vriend van me heeft een phpscript geschreven vervolgens zegt hij dat het script helemaal veilig is.

Betreft het script:

<?php
if (!empty($_SERVER['HTTPS']) && ('on' == $_SERVER['HTTPS'])) {
$uri = 'https://';
} else {
$uri = 'http://';
}
$uri .= $_SERVER['HTTP_HOST'];
header('Location: '.$uri.'/website/');
exit;
?>
Fout opgetreden!


Nu ben ik dus de host ($uri .=) aan het proberen te veranderen, dit probeer ik met Internet Explorer

[ignore]http://192.168.0.2/index.php?uri .=192.168.0.4[/ignore]

Alleen het wil niet lukken ik zelf denk omdat er een spatie in de url zit? Zou iemand me kunnen helpen?

Alvast bedankt
Wat ben je precies van plan met dit script?
Inderdaad, die url is geen geldige url. Ik snap ook niet precies wat je met die url wilt, aangezien je script hierboven geen $_GET-parameters nodig heeft. Het enige wat het script doet is indien er https-support beschikbaar is de lezer doorsturen naar de https verbinding in plaats van standaard http.
Nu kan je eventueel een waarde meegeven via GET, dus zo:
bestandsnaam.php?uri=blabla.nl
Als je niet ?uri= toevoegt doettie de $_SERVER['HTTP_HOST'].
Succes!

<?php
    if (!empty($_SERVER['HTTPS']) && ('on' == $_SERVER['HTTPS'])) {
        $uri = 'https://';
    } else {
        $uri = 'http://';
    }
    if (empty($_GET['uri'])){
        $uri .= $_GET['uri'];
    } else {
    $uri .= $_SERVER['HTTP_HOST'];
    }
    header('Location: '.$uri.'/website/');
    exit;
?>
vraagje? volgende keer andere title te gebruiken!
ooh, je probeert je vriend ongelijk te geven. Nu moet ik je teleurstellen, de server-variabele HTTP_HOST is niet te beïnvloeden op die manier. Hij heeft dus gelijk.

Reageren