Visualizzazione dei risultati da 1 a 10 su 10
  1. #1

    variabile ambiente ip locale e connessione esterna

    salve a tutti su un sito dovrei mettere un area provata dove è possibile collegarsi sia dall'interno che dall'esterno.
    per adesso è possibile collegarsi solo dall'esterno perchè è stato fatto un href sul sito, ma se io provo a connettermi dall'interno del dominio della mia società non funziona... da dentro funziona solo se inserisco nel browser l'indirizzo ip 7la cartella che voglio del mio server web che ho fisicamente dentro la nostra azienda..

    ip fisico 192.168.7.12/areaprovata mi ci si connette dall'interno dell'azienda
    www.indirizzo.it/areaprivata solo dall'esterno

    da quello che ho capito serve una variabile d'ambiente in php che riconosce da dove parte la chiamata, e quindi se parte dall'interno si apre il sito con l'ip in locale, se parte da fuori si apre www. ecc ecc

    io non so naturalmente come si fa e chiedo a voi geni del codice.. grazieeeeeeeee

  2. #2
    Ciao, non vorrei sbagliare ma, ovviamente nel primo caso si tratta di una LAN interna e nell'altro si tratta del mondo esterno.

    Se tu hai bisogno di differenziare il tipo di accesso a seconda della rete, devi ovviamente identificare la rete di provenienza.

    Per farlo, hai necessità di prelevare l'IP del visitatore e verificare che lasua net sia quella di appartenenza.

    Ad esempio, se tu sai che l'IP interno è: 192.168.7.12

    Allora puoi fare un controllo del genere:

    Codice PHP:
    $ip substr($_SERVER['REMOTE_ADDR'], 09);
    if (
    $ip == "192.168.7")
    //Apri il sito interno
    else
    //Apri il sito esterno 
    Ma questo è vero se ovviamente tu conosci a monte la tua Lan interna e sai che tutti i terminali interna ad essa hanno quel riferimento di base! (anche se credo fortemente di si).

  3. #3
    Io ho fatto così ma non mi funge, dall'esterno funzione, interno no.. cosa può essere firewall aziendale? o ho sbagliato qualcosa? grazie



    <?php
    $ip = substr($_SERVER['REMOTE_ADDR'], 0, 9);
    if ($ip == "192.168.7"){
    echo'http://192.168.7.12';
    }
    else{
    echo'<h5>AREA PRIVATA</h5>';
    }
    ?>

  4. #4
    nella if ho notato che segue sempre il ramo del falso cioè del ELSE mi sapresti spiegare il perchè la condizione è sempre falsa? dove sbaglio? Grazie mille

  5. #5
    Evidentemente la condizione $ip == "192.168.7" è falsa.
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  6. #6
    è alsa perchè? i 9 pc che sono nella mia azienda hanno ip dinamico ma il range è 192.168.7. qualcosa quindi in che senso è falsa

  7. #7
    Tanto per andare sul sicuro fai così:

    Codice PHP:
    $ip substr($_SERVER['REMOTE_ADDR'], 09);
    echo 
    $ip;
    if (
    $ip == "192.168.7")
    //Apri il sito interno
    else
    //Apri il sito esterno 
    in questo modo controlli se tutto va bene ossia, la net che riceve lui è effettivamente una NET locale o altro!

    Ti apiego, se tutti quanti sono dietro ad un router, è molto probabile che tutti quanti in uscita abbiano la stessa identica Interfaccia IP quindi lo stesso IP, mi spiego

    Rete aziendale -> Router -> rete esterna -> ritorno al tuo router -> sito

    Con questa condizione i tuoi computer interni alla lan non vedranno mai il sito internamente ma sempre esternamente.

    Se vuoi forzare allora devi prendere il tuo IP esterno e quindi porre quella condizione con IP esterno (e non di lan interna) perché sai per certo che con l'IP del tuo router sicuramente si sarà connesso uno dei PC della LAN

  8. #8
    o mio dio...ma se ti dico non basta creare una variabile d'ambiente? io nn so neanche cos'è ma mi è stato suggerito.. io penso che la tua risposta sia meglio .. ma che dici di ciò che mi è stato detto?

  9. #9
    Originariamente inviato da eternoragazzo
    in che senso è falsa
    Se va nell'else la condizione è falsa c'è poco da dire. Tocca a te verificare come mai!
    Magari facendo la furbata di stampare il contenuto di $ip?!?!
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  10. #10
    Allora ti spiego.

    Supposto, se mi par di aver compreso bene, che tu abbia 9 PG aziendali su cui uno gira il server PHP, questi sono tutti connessi tra loro in qualche modo (presumo un switch).

    Supponiamo che il server abbia 192.168.7.12

    mentre l'altro PC client abbia 192.168.7.15


    se tu metti dal .15 l'indirizzo di destinazione, ti apre il link?

    Questo è importante da capire perché se si, allora si può fare se no, allora il problema si delega al router o al link e li c'è poco da fà

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.