Voisiko php:llä jotensakin luotettavasti varmistaa asiakaskoneen osoitteen. Jos esimerkiksi asiakas on vahingossa avannut 2 ikkunaa samalla koneella, niin palvelin haluaisi varmistaa, että ei pidä yhteyttä turhan takia kaksinkertaisena.
Netistä löytyi tällaisia tapoja asiakkaan osoitteen "varmistamiseksi", mutta mikä niistä on oikeasti varma ja mikä ei, on epäselvää. Ne eivät näköjään edes ole aina palvelimen $_SERVER-taulukossa.
<?php
print( $HTTP_SERVER_VARS['HTTP_X_CLUSTER_CLIENT_IP'] . ' a' . '</br>');
print( $_SERVER['REMOTE_ADDR'] . ' b' . '</br>');
print( $_SERVER['HTTP_X_FORWARDED_FOR'] . ' c' . '</br>');
print( $_SERVER['HTTP_VIA'] . ' d' . '</br>');
print( $_SERVER['HTTP_CLIENT_IP'] . ' e ' . '</br>');
print( $_SERVER['HTTP_CF_CONNECTING_IP'] . ' f' . '</br>');
print( $_SERVER['HTTP_XREAL_IP'] . ' g' . '</br>');
print( $_SERVER['HTTP_REFERER'] . ' h' . '</br>');
?>
Jollain tavalla palvelimen kai pitää tietää, mitä se on lähettämässä minnekin, missä muuttujassa tämän tiedon pitäisi olla.
MUOK.
Tämä taitaa toimia
print( $_SERVER['REMOTE_ADDR']?:($_SERVER['HTTP_X_FORWARDED_FOR']?:
$_SERVER['HTTP_CLIENT_IP']) );