Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2006
    Messaggi
    150

    Problema con la variabile $_SERVER["HTTP_REFERER"]

    Salve,
    su una pagina php del mio sito che indico con pippo.php, ho implementanto il seguente codice:

    Codice PHP:
    <script type="text/javascript" src="mostra.php?var1=valore1&var2=valore2"></script> 
    All' interno del file mostra.php ci sono una serie di elaborazioni e al termine dell' esecuzione risponde con un

    document.write('<script type=\"text/javascript\" src=\"bla bla bla\"></script>')


    Per evitare che qualcuno spulci nel codice sorgente della pagina pippo.php e lanci direttamente dal proprio browser la pagina http://www.miodominio.com/mostra.php...&var2=valore2, ho messo all' inizio della pagina mostra.php il seguente codice:

    Codice PHP:
    <?
    unset($domain_ref);

    $tmp_ref parse_url($_SERVER["HTTP_REFERER"]);
    $domain_ref str_replace("www."""$tmp_ref["host"]);

    if ( 
    $domain_ref != "miodominio.com" ) {
      exit();
    }

    ecc........
    ecc.........
    ?>

    Quello che succede è che se si lancia la prima volta dal browser la pagina http://www.miodominio.com/mostra.php...1&var2=valore2 la parte di codice

    Codice PHP:
    <?


    if ( $domain_ref != "miodominio.com" ) {
      exit();
    }

    ?>
    viene ignorata e mostra.php da il risultato che deve dare. Ovviamente aggiornando invece il browser entra in azione l' if.

    Come posso fare per far si che il ramo if ( $domain_ref != "miodominio.com" ) { exit(); }
    entri subito in azione ???

  2. #2
    Un controllo basato sull'header referer ha un bassissimo livello di sicurezza.

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2006
    Messaggi
    150
    Allora cosa dovrei fare ?

  4. #4
    c'e' una cosa ke non capisco...

    te controlli ke $_SERVER["HTTP_REFERER"] sia ugiale a "miodominio.it"

    ma xke?? non ha senso quello ke fai...

    non puoi bloccare la pagina http://www.miodominio.com/mostra.php...1&var2=valore2

    altrimenti non funziona neanke

    <script type="text/javascript" src="mostra.php?var1=valore1&var2=valore2"></script>

    perche verrebbe giustamente bloccato...

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2006
    Messaggi
    150
    No, aspetta, forse ti sei perso un pezzo,

    Prima da $_SERVER["HTTP_REFERER"] ricavo il dominio tramite il primo pezzo di script:

    Codice PHP:
    bla bla

    $tmp_ref 
    parse_url($_SERVER["HTTP_REFERER"]); 
    $domain_ref str_replace("www."""$tmp_ref["host"]);

    bla bla 
    e stando <script type="text/javascript" src="mostra.php?var1=valore1&var2=valore2"></script> su una pagina del mio dominio, è ovvio che funziona...

    Se io vado ad aprire però http://www.miodominio.com/mostra.php...1&var2=valore2 direttamente dal browser, la prima volta che lo faccio, dà ugualmente il risultato che deve dare, come se fosse richiama effettivamente da una pagina del mio sito.... ma se aggiorno il browser con inserito il medesimo indirizzo http://www.miodominio.com/mostra.php...&var2=valore2, allora fa ciò che vorrei io, cioè subentra la funzione exit() ( cosa che vorrei facesse sin da subito... )

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.