Visualizzazione dei risultati da 1 a 4 su 4

Discussione: IP e iframe

  1. #1
    Utente di HTML.it L'avatar di Scream
    Registrato dal
    Apr 2002
    Messaggi
    228

    IP e iframe

    Buongiorno a tutti ho una richiesta un po' particolare.
    Devo fornire un servizio tramite un iframe e fin qui nessun problema
    Tuttavia poiché l'iframe mostrerà alcuni dati riservati a siti convenzionati, vorrei evitare che altri possano copiare il codice dell'iframe ed inserirlo nei loro siti.
    Es pratico:
    www.frutta.com è convenzionato, mette l'iframe e i suoi visitatori ne vedono il contenuto
    www.verdura.com NON è convenzionato, mette l'iframe e i suoi visitatori vedono un messaggio di errore

    Inizialmente avevo pensato ad una soluzione mediante AJAX, ma dopo una prova con 2 siti convenzionati, ho visto che chi li curava inserendo i contenuti, non aveva alcuna dimestichezza con il sorgente HTML e quindi ho deciso di abbandonare l'idea in favore di un più "semplice" iframe (un po' come per youtube)
    Quindi faccio inserire il codice:
    codice:
    <iframe src="http://www.example.com/richiesta.php"></iframe>
    e nella pagina richiesta.php gestisco contenuto e messaggio di errore. Il problema è questo:
    come recupero l'IP del sito che mi fa la richiesta?
    Un semplice
    Codice PHP:
    $_SERVER['REMOTE_ADDR'
    purtroppo non funziona perché restituisce l'IP di chi apre la pagina che contiene l'iframe e non quello del sito che contiene l'iframe
    Avete una soluzione per passare questo valore che non sia manipolabile da un malintenzionato?

  2. #2
    Utente di HTML.it
    Registrato dal
    Nov 2008
    Messaggi
    209
    Che io sappia una pagina richiamata via iframe non ha modo di trovare l'IP del SERVER che la richiamata.

    Secondo me non puoi fare a meno di una chiamata AJAX.

  3. #3
    Forse potresti cavartela così:

    nella http://www.example.com/richiesta.php che carichi nell'iframe fai un controllo su $_SERVER['HTTP_REFERER']. Se il dominio è nell'elenco dei siti convenzionati mostri il contenuto, altrimenti niente.

    Non è probabilmente il metodo più sicuro del mondo, ma è già qualcosa.
    Michele
    King Of The Kill

  4. #4
    Utente di HTML.it L'avatar di Scream
    Registrato dal
    Apr 2002
    Messaggi
    228
    Grazie King, effettivamente questo sistema ha funzionato egregiamente:

    Codice PHP:
    $ipconsentiti[] = gethostbyname("www.sito-a.com");
    $ipconsentiti[] = gethostbyname("www.sito-b.com");
    $ipconsentiti[] = gethostbyname("www.sito-c.com");

    $arraysito explode("/"$_SERVER['HTTP_REFERER']);
    $ospite $arraysito[2];

    if(
    $ospite=="")$ospite $_SERVER['HTTP_HOST'];

    $ipospite gethostbyname($ospite);

    if(!
    in_array($ipospite$ipconsentiti)) {
      
    ecc... 

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.