Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 19
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2008
    Messaggi
    40

    impedire apertura di una pagina

    ciao a tutti,

    vorrei sapere se esiste (spero di si) un metodo per impedire l'apertura di una certa pagina php.
    faccio un esempio perchè non so come altro spiegarmi:

    io ho due pagine e so per certo che la seconda pagina può essere richiamata solo ed esclusivamente dalla prima e non voglio che venga aperta mettendo a mano nel browser il suo indirizzo aggirando di fatto la prima pagina....

    spero di essermi spiegato.....
    grazie....

  2. #2

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2008
    Messaggi
    40
    Originariamente inviato da StefanoC
    http://php.html.it/guide/lezione/300...ati-file-non-/
    ciao....ti ringrazio per la risposta....velocissima tra l'altro....

    però probabilmente non è la risposta che cerco...mi spiego meglio:

    io ho due pagine web chiamate pagina_1.php e pagina_2.php....
    per come sono fatte le due pagine io so che pagina_2.php viene chiamata da pagina_1.php tramite la funzione header() e di fatto aprire pagina_2.php direttamente da browser non avrebbe senso......almeno che non si abbiano cattive intenzioni...
    allora la domanda è: come faccio ad essere sicuro che la richiesta per pagina_2.php arrivi da pagina_1.php e non magari da un'altra pagina (non mia) oppure direttamente da browser?

  4. #4
    Utente di HTML.it L'avatar di brodik
    Registrato dal
    Jan 2009
    Messaggi
    765
    puoi fare un controllo sul refereer..

  5. #5
    Originariamente inviato da axl01
    ciao....ti ringrazio per la risposta....velocissima tra l'altro....

    però probabilmente non è la risposta che cerco...mi spiego meglio:

    io ho due pagine web chiamate pagina_1.php e pagina_2.php....
    per come sono fatte le due pagine io so che pagina_2.php viene chiamata da pagina_1.php tramite la funzione header() e di fatto aprire pagina_2.php direttamente da browser non avrebbe senso......almeno che non si abbiano cattive intenzioni...
    allora la domanda è: come faccio ad essere sicuro che la richiesta per pagina_2.php arrivi da pagina_1.php e non magari da un'altra pagina (non mia) oppure direttamente da browser?
    Ciao
    se il file deve essere richiamato solo dalla tua pagina_1, allora mi semplificherei la vita: metti il file pagina_2 dentro una cartella e, se usi apache, crea un file .htaccess con dentro il codice qui in appresso nella stessa cartella che impedirà a chiunque ci provi di scaricare qualsiasi file :

    <Files ~ ".+">
    Order allow,deny
    Deny from all
    Satisfy All
    </Files>
    Ovviamente il file sarà richiamabile dal solo script pagina_1 !!

    se il file pagina 2 è condiviso anche da altri allora vai di referer

    ciao,stefano

  6. #6
    Puoi definire una costante nel primo file
    Codice PHP:
    <?php
    define
    ('COSTANTE'TRUE);
    // script
    ?>
    e poi verificare se è defenita nel secondo file e se non è definita esegui un redirect
    Codice PHP:
    <?php
    if(!defined('COSTANTE')){
    header('location: /');
    exit();
    }
    ?>
    Altrimenti puoi utilizzare un file .htaccess
    Codice PHP:
    <Files "^nomefile.php$">
    deny from all 
    </Files

  7. #7
    Il metodo più brutale e veloce è infilare tutta la pagina due in un bel:

    codice:
    if($variabilescelta=="valore"){
    ...
    }
    E nella pagina che la richiama metti:
    codice:
    $variabilescelta="valore";
    non ho usato un semplice isset perchè se hai i register globals attivi ti possono fregare (anche se è molto difficile indovinare il nome di variabile scelto)

    ci sono poi metodi molto più raffinati...
    Can You See Curtains? Then Isn't Windows!

  8. #8
    Utente di HTML.it
    Registrato dal
    Nov 2008
    Messaggi
    40
    ok...grazie per i consigli...
    come li leggo i refer?

    in giro per internet ho trovato cose come:

    $_SERVER['HTTP_REFERER']

    e

    $HTTP_REFERER

    ma nessuno dei due mi funziona.....

  9. #9
    Se devi includere la seconda pagina nella prima, è inutile controllare il referer!
    Can You See Curtains? Then Isn't Windows!

  10. #10
    Utente di HTML.it
    Registrato dal
    Nov 2008
    Messaggi
    40
    ma io non voglio includere la pagina....

    c'è semplicemente una pagina che viene chiamata da un altra pagina tramite un header......voglio solo sapere come faccio a capire se la richiesta avviene dalla pagina che dico io oppure se c'è qualcuno che sta facendo il furbo chiamando la pagina mettendo direttamente il suo indirizzo nella barra del browser....

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.