You can find in this page something like php
) or phpinfo
(it's in PHP language), so it's your request headers and server headers.
(information from $_SERVER,$_SERVER info, my request headers
$_SERVER is an array containing information such as headers, paths, and script locations (request information + part of server execution information).
The entries in this array are created by the web server from it's internal variables and user's request variables.
The most useful variables that sending user's browser:
- Contents of the Accept-Charset: header from the current request, if there is one. Example: 'iso-8859-3,*,utf-8'.
- Contents of the Accept-Encoding: header from the current request, if there is one. Example: 'jpeg'.
- Contents of the Accept-Language: header from the current request, if there is one. Example: 'en'.
- The address of the page (if any) which referred the user agent to the current page. This is set by the user agent. Not all user agents will set this, and some provide the ability to modify HTTP_REFERER as a feature. In short, it cannot really be trusted.
- Contents of the User-Agent: header from the current request, if there is one. This is a string denoting the user agent being which is accessing the page.
- The IP address from which the user is viewing the current page. (can be modified by proxy)
It's not easy no rewrite REMOTE_ADDR varibales on client side, because it's near TCP-IP level and it's generation automaticaly. Other variables like HTTP_REFERER and HTTP_ACCEPT_LANGUAGE generating by browser and can be chenged to some custom values, most of browser allow you to set charset for example.