Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > it.comp.www.php > #20714 > unrolled thread

testare se pagina php è in locale o remoto

Started by"leonardo.1+++" <leonardo.1@fastwebnet.it>
First post2016-04-26 18:15 +0200
Last post2016-04-26 20:44 +0000
Articles 7 — 5 participants

Back to article view | Back to it.comp.www.php


Contents

  testare se pagina php è in locale o remoto "leonardo.1+++" <leonardo.1@fastwebnet.it> - 2016-04-26 18:15 +0200
    Re: testare se pagina php è in locale o remoto "ciccio" <21669invalid@mynewsgate.net> - 2016-04-26 16:37 +0000
      Re: testare se pagina php è in locale o remoto "leonardo.1+++" <leonardo.1@fastwebnet.it> - 2016-04-26 18:57 +0200
    Re: testare se pagina php  in locale o remoto Andrea D'Amore <anddam+NOSPAM@brapi.net> - 2016-04-26 18:38 +0200
      Re: testare se pagina php  in locale o remoto "leonardo.1+++" <leonardo.1@fastwebnet.it> - 2016-04-26 18:44 +0200
        Re: testare se pagina php  in locale o remoto marcocatarsi@tiscaly.it (Catarsi) - 2016-04-26 22:25 +0200
    Re: testare se pagina php è in locale o remoto Alessandro Pellizzari <shuriken@amiran.it> - 2016-04-26 20:44 +0000

#20714 — testare se pagina php è in locale o remoto

From"leonardo.1+++" <leonardo.1@fastwebnet.it>
Date2016-04-26 18:15 +0200
Subjecttestare se pagina php è in locale o remoto
Message-ID<XuMTy.44586$pt.43233@tornado.fastwebnet.it>
Esiste una funzione da inserire in una pagina web che permette qualcosa 
del genere?

if(testo qualcosa) echo"sono in locale";
else
echo""sono in remoto";
Se non esiste, un consiglio su come fare il test?
Grazie.
Leonardo


-- 
Non sono su facebook
Se anche tu vuoi cancellarti
http://www.giardiniblog.com/come-cancellarsi-da-facebook-eliminare-account/

[toc] | [next] | [standalone]


#20715

From"ciccio" <21669invalid@mynewsgate.net>
Date2016-04-26 16:37 +0000
Message-ID<2016042616372121669@mynewsgate.net>
In reply to#20714
leonardo.1+++ <leonardo.1@fastwebnet.it> ha scritto:

> Esiste una funzione da inserire in una pagina web che permette qualcosa 
> del genere?
> 
> if(testo qualcosa) echo"sono in locale";
> else
> echo""sono in remoto";
> Se non esiste, un consiglio su come fare il test?
> Grazie.
> Leonardo
> 
> 

sostituisci "testo qualcosa" con:

$_SERVER['SERVER_NAME'] == 'localhost'




[toc] | [prev] | [next] | [standalone]


#20718

From"leonardo.1+++" <leonardo.1@fastwebnet.it>
Date2016-04-26 18:57 +0200
Message-ID<I5NTy.44588$pt.44400@tornado.fastwebnet.it>
In reply to#20715
Il 26/04/2016 18:37, ciccio ha scritto:
>
> $_SERVER['SERVER_NAME'] == 'localhost'
>

Ti ringrazio, era il cosiddetto "uovo di colombo"!!!
dev'essere l'ora
Saluti
Leonardo

-- 
Non sono su facebook
Se anche tu vuoi cancellarti
http://www.giardiniblog.com/come-cancellarsi-da-facebook-eliminare-account/

[toc] | [prev] | [next] | [standalone]


#20716 — Re: testare se pagina php  in locale o remoto

FromAndrea D'Amore <anddam+NOSPAM@brapi.net>
Date2016-04-26 18:38 +0200
SubjectRe: testare se pagina php  in locale o remoto
Message-ID<nfo5he$vos$1@virtdiesel.mng.cu.mi.it>
In reply to#20714
On 2016-04-26 16:15:51 +0000, leonardo.1+++ said:

> if(testo qualcosa) echo"sono in locale";
> else
> echo""sono in remoto";

Dipende da che intendi per "essere in locale" ed "in remoto", se non 
capisco male puoi controllare l'indirizzo IP del client e fare una 
scelta euristica, se ad esempio appartiene a 127/8 o 192.168/16 e 
simili puoi decidere che il client è locale.

Sembra un problema XY però, qual è il caso d'uso?


-- 
Andrea

[toc] | [prev] | [next] | [standalone]


#20717 — Re: testare se pagina php  in locale o remoto

From"leonardo.1+++" <leonardo.1@fastwebnet.it>
Date2016-04-26 18:44 +0200
SubjectRe: testare se pagina php  in locale o remoto
Message-ID<NVMTy.44587$pt.15896@tornado.fastwebnet.it>
In reply to#20716
Il 26/04/2016 18:38, Andrea D'Amore ha scritto:
> On 2016-04-26 16:15:51 +0000, leonardo.1+++ said:
>
>> if(testo qualcosa) echo"sono in locale";
>> else
>> echo""sono in remoto";
>
> Dipende da che intendi per "essere in locale" ed "in remoto", se non
> capisco male puoi controllare l'indirizzo IP del client e fare una
> scelta euristica, se ad esempio appartiene a 127/8 o 192.168/16 e simili
> puoi decidere che il client è locale.
>
> Sembra un problema XY però, qual è il caso d'uso?
>
>

Uno script deve eseguire dei comandi se in locale ed altri se in remoto.
Ho provato con:
$StringaPercorso = $_SERVER['PHP_SELF'];
testandone il contenuto, ma non mi da la  certezza assoluta in caso di 
cambio di cartella.
Saluti


-- 
Non sono su facebook
Se anche tu vuoi cancellarti
http://www.giardiniblog.com/come-cancellarsi-da-facebook-eliminare-account/

[toc] | [prev] | [next] | [standalone]


#20722 — Re: testare se pagina php  in locale o remoto

Frommarcocatarsi@tiscaly.it (Catarsi)
Date2016-04-26 22:25 +0200
SubjectRe: testare se pagina php  in locale o remoto
Message-ID<1mmc3aj.18iit1xsp3asiN%marcocatarsi@tiscaly.it>
In reply to#20717
leonardo.1+++ <leonardo.1@fastwebnet.it> wrote:
 
> Uno script deve eseguire dei comandi se in locale ed altri se in remoto.

A me, sapere se sono in locale o in remoto, serve per collegarmi a un
database o un altro. E faccio così:

$serverName=$_SERVER['SERVER_NAME'];

        if ($serverName=='localhost' or substr($serverName,0,3)=='192'
or substr($serverName,0,3)=='127') {

        // sono in locale 
        
        } else {

        // sono in remoto
        }

Ma funziona a me, non so se può considerarsi una tecnica universalmente
valida. 
 
-- 
mailto: y = i
------------------------------------------------------
http://www.catarsi.it
Vivo nel terrore di non essere frainteso (Oscar Wilde)

[toc] | [prev] | [next] | [standalone]


#20724

FromAlessandro Pellizzari <shuriken@amiran.it>
Date2016-04-26 20:44 +0000
Message-ID<doa291Fjfg0U3@mid.individual.net>
In reply to#20714
Il Tue, 26 Apr 2016 18:15:51 +0200, leonardo.1+++ ha scritto:

> Esiste una funzione da inserire in una pagina web che permette qualcosa
> del genere?

A parte i vari suggerimenti, io preferisco il metodo deterministico.

Nella configurazione del Virtualhost su Apache (o chi per esso, tipo 
nginx) uso, sul server di produzione:

SetEnv APP_ENV production

oppure, sul server locale:

SetEnv APP_ENV test


Poi in PHP uso semplicemente:

$env = getenv('APP_ENV');


In questo modo non hai sorprese, per esempio, se qualcuno ti piazza un 
proxy o un load-balancer davanti, e improvvisamente ti trovi con valori 
strani in SERVER_NAME.

Bye.

[toc] | [prev] | [standalone]


Back to top | Article view | it.comp.www.php


csiph-web