导航:首页 > 编程语言 > php获取客户端信息

php获取客户端信息

发布时间:2023-04-12 05:27:45

php怎么获取系统信息和服务器详细信息

获取系统类型及版本号: php_uname() (例:Windows NT COMPUTER 5.1 build 2600)
只获取系统类型: php_uname('s') (或:PHP_OS,例:Windows NT)
只获取系统版本号: php_uname('r') (例:5.1)
获取PHP运行方式: php_sapi_name() (PHP run mode:apache2handler)
获取前进程用户名: Get_Current_User()
获取PHP版本: PHP_VERSION
获取Zend版本: Zend_Version()
获取PHP安装路径: DEFAULT_INCLUDE_PATH
获取当前文件绝对路径: __FILE__
获取Http请求中Host值: $_SERVER["HTTP_HOST"] (返回值为域名或IP)
获取服务器IP: GetHostByName($_SERVER['SERVER_NAME'])
接受请求的服务器IP: $_SERVER["SERVER_ADDR"] (有时候获取不到,推荐用:GetHostByName($_SERVER['SERVER_NAME']))
获取客户端IP: $_SERVER['REMOTE_ADDR']
获取服务器解译引擎: $_SERVER['SERVER_SOFTWARE']
获取服务器CPU数量: $_SERVER['PROCESSOR_IDENTIFIER']
获取服务器系统目录: $_SERVER['SystemRoot']
获取服务器域名: $_SERVER['SERVER_NAME'] (建议使用:$_SERVER["HTTP_HOST"])
获取用户域名: $_SERVER['USERDOMAIN']
获取服务器语言: $_SERVER['HTTP_ACCEPT_LANGUAGE']
获取服务器Web端口: $_SERVER['SERVER_PORT']
访问用户的浏览器信息: $_SERVER['HTTP_USER_AGENT'];
<script language="JavaScript">
document.write("浏览器名称: "+navigator.appName+"<br>");
document.write("浏览器版本号: "+navigator.appVersion+"<br>");
document.write("系统语言: "+navigator.systemLanguage+"<br>");
document.write("系统平台: "+navigator.platform+"<br>");
document.write("浏览器是否支持cookie: "+navigator.cookieEnabled+"<br>");
</script>

② jsp中request.getHeader()获取客户端的各种信息,那php中什么方法来获取

服务器变量 $_SERVER 详解:

1、$_SESSION['PHP_SELF'] -- 获取当前正在执行脚本的文件名

2、$_SERVER['SERVER_PROTOCOL'] -- 请求页面时通信协议的名称和版本。例如,“HTTP/1.0”。

3、$_SERVER['REQUEST_TIME'] -- 请求开始时的时间戳。从 PHP 5.1.0 起有效。和time函数效果一样。

4、$_SERVER['argv'] -- 传递给该脚本的参数。我试了下,get方法可以得到$_SERVER['argv'][0];post方法无法给他赋值。

5、$_SERVER['SERVER_NAME'] -- 返回当前主机名。

6、$_SERVER['SERVER_SOFTWARE'] -- 服务器标识的字串,在响应请求时的头信息中给出。 如Microsoft-IIS/6.0

7、$_SERVER['REQUEST_METHOD'] -- 访问页面时的请求方法。例如:“GET”、“HEAD”,“POST”,“PUT”。

8、$_SERVER['QUERY_STRING'] -- 查询(query)的字符串(URL 中第一个问号 ? 之后的内容)。

9、$_SERVER['DOCUMENT_ROOT'] -- 当前运行脚本所在的文档根目录。在服务器配置文件中定义。 如E:\server

10、$_SERVER['HTTP_ACCEPT'] -- 当前请求的 Accept: 头信息的内容。

11、$_SERVER['HTTP_ACCEPT_CHARSET'] -- 当前请求的 Accept-Charset: 头信息的内容。例如:“iso-8859-1,*,utf-8”。

12、$_SERVER['HTTP_ACCEPT_ENCODING'] -- 当前请求的 Accept-Encoding: 头信息的内容。例如:“gzip”。

13、$_SERVER['HTTP_ACCEPT_LANGUAGE'] -- 当前请求的 Accept-Language: 头信息的内容。例如:“en”。

14、$_SERVER['HTTP_CONNECTION'] -- 当前请求的 Connection: 头信息的内容。例如:“Keep-Alive”。

15、$_SERVER['HTTP_HOST'] -- 当前请求的 Host: 头信息的内容。

16、$_SERVER['HTTP_REFERER'] -- 链接到当前页面的前一页面的 URL 地址。

17、$_SERVER['HTTP_USER_AGENT'] -- 返回用户使用的浏览器信息。也可以使用 get_browser() 得到此信息。

18、$_SERVER['HTTPS'] -- 如果通过https访问,则被设为一个非空的值,否则返回off.

19、$_SERVER['REMOTE_ADDR'] -- 正在浏览当前页面用户的 IP 地址。

20、$_SERVER['REMOTE_HOST'] -- 正在浏览当前页面用户的主机名。反向域名解析基于该用户的 REMOTE_ADDR。如本地测试返回127.0.0.1

21、$_SERVER['REMOTE_PORT'] -- 用户连接到服务器时所使用的端口。我在本机测试没通过,不知道什么原因。

22、$_SERVER['SCRIPT_FILENAME'] -- 当前执行脚本的绝对路径名。如返回E:\server\index.php

23、$_SERVER['SERVER_ADMIN'] -- 该值指明了 Apache 服务器配置文件中的 SERVER_ADMIN 参数。如果脚本运行在一个虚拟主机上,则该值是那个虚拟主机的值

24、$_SERVER['SERVER_PORT'] -- 服务器所使用的端口。默认为“80”。如果使用 SSL 安全连接,则这个值为用户设置的 HTTP 端口。

25、$_SERVER['SERVER_SIGNATURE'] -- 包含服务器版本和虚拟主机名的字符串。

26、$_SERVER['PATH_TRANSLATED'] -- 当前脚本所在文件系统(不是文档根目录)的基本路径。这是在服务器进行虚拟到真实路径的映像后的结果。 Apache 2 用 户可以使用 httpd.conf 中的 AcceptPathInfo On 来定义 PATH_INFO。

27、$_SERVER['SCRIPT_NAME'] -- 包含当前脚本的路径。这在页面需要指向自己时非常有用。__FILE__ 包含当前文件的绝对路径和文件名(例如包含文件)。

28、$_SERVER['REQUEST_URI'] -- 访问此页面所需的 URI。例如,“/index.html”。

29、$_SERVER['PHP_AUTH_DIGEST'] -- 当作为 Apache 模块运行时,进行 HTTP Digest 认证的过程中,此变量被设置成客户端发送的“Authorization”HTTP 头内容(以便作进一步的认证操作)。

30、$_SERVER['PHP_AUTH_USER']-- 当 PHP 运行在 Apache 或 IIS(PHP 5 是 ISAPI)模块方式下,并且正在使用 HTTP 认证功能,这个变量便是用户输入的用户名。

31、$_SERVER['PHP_AUTH_PW'] -- 当 PHP 运行在 Apache 或 IIS(PHP 5 是 ISAPI)模块方式下,并且正在使用 HTTP 认证功能,这个变量便是用户输入的密码。

32、$_SERVER['AUTH_TYPE']--当 PHP 运行在 Apache 模块方式下,并且正在使用 HTTP 认证功能,这个变量便是认证的类型。

③ 如何获取PHP客户端及服务器端IP了

客户端的ip变量:
$_SERVER['REMOTE_ADDR'] :客户端IP,也有可能是代理IP
$_SERVER['HTTP_CLIENT_IP']:代理端的IP,可能存在,也可能伪造
$_SERVER['HTTP_X_FORWARD_FOR'] :用户在哪个ip上使用的id,可能存在,也可能伪造
服务端的ip变量:
$_SERVER['SERVER_NAME'] :需要使用函数gethostname()来获得,这个无论是服务器端还是客户端都能正常显示。
$_SERVER['SERVER_ADDR']:服务器端的ip地址,在服务器端测试ip地址,在客户端测试正常
getnev 获得系统的环境变量:

④ php 如何获取 客户端http header

<?php
$dir=$HTTP_GET_VARS["dir"];//.......取得上个页面传递来的路径
$file=$HTTP_GET_VARS["file"];//.......取得传递来的文件名
$url=parse_url($HTTP_REFERER);/*......取得前一页面的URL地址,并将其放入一个数组中*/
if($url[host]!=$HTTP_HOST){echo"要下载本软件请到<ahref=http://www.df365.org>东方小屋</a>";exit;}/*检查来源网站是不是自己的网站,如果不是,返回“要下载本……”*/
if(empty($dir))$dir="/";//......如果路径名为空,则为指定根目录
if(empty($file)){echo"未指定要下载的文件!";exit;}/*如果文件名为空,返回“未指定……”*/
$rootdir="文件存放的根目录";//......你的下载路径根目录
$realurl=$rootdir.$dir;//.......取得你的下载目录
chdir($realurl);//......将当前目录转到下载目录中
if(!file_exists($file)){echo"对不起,此链接已经失效,请在下载页面上向我们报告,谢谢!";exit;}//......测试文件是否存在
$filename=$file;
//发送文件头信息
header("Cache-control:private");//fixforIE
header("Content-Type:application/octet-stream");
header("Content-Length:".filesize($filename));
header("Content-Disposition:attachment;filename=$filename");
$fp=fopen($filename,'r');//以读取方式打开指定文件
fpassthru($fp);//**CORRECT**以二进制方式读取文件
fclose($fp);//关闭文件
?>

⑤ php 如何获取客户端唯一标识

标识一个客户端:
首先服务端就排除了,因为可以用多个用户登录。
然后看客户端有什么办法,只能是采用客户端存储的方式
1、cookie 这个你排除了,可能是因为清除cookie比较容易操作。但这也是一种办法。
2、客户端的dom存储,这个有一定的局限,只有新的浏览器支持。而且同样可以删除。
3、插件方式,这个需要客户安装,一般不可能,但可以利用比较流行的安装率比较高的插件,例如flash,采用flash的本地存储记录。同样可以删除。

综上,不可能完全的防止,但可以采用几种技术的结合,这样可以增加重复发布的难度。
但是还是那句话,是否重复发表信息是由用户决定的。如果用户认为重复发布的成本高于了解除这个限制的成本,那么也就降低了用户重复发布的几率。
这个没有完美的解决方案,只能是尽力。

⑥ php用socket获得客户端的ip和端口

socket_getpeername() 获取远程类似主机的ip地址
socket_getsockname() 获取本地socket的ip地址
怎么感觉你用的实际上是对的,难道用nginx一类的负载均衡服务器了

⑦ php怎么获取手机客户端ip

php获取客户端ip地址方法总结
用php获取客户端ip地址的方法,具体代码如下:
?php
$iipp=$_server["remote_addr"];
echo
$iipp;
?

///////////////////////////////////////////////
?php
$user_ip
=
($_server["http_via"])
?
$_server["http_x_forwarded_for"]
:
$_server["remote_addr"];
$user_ip
=
($user_ip)
?
$user_ip
:
$_server["remote_addr"];
echo
$user_ip;
?

///////////////////////////////////////////////
?php
function
get_real_ip(){
$ip=false;
if(!empty($_server["http_client_ip"])){
$ip
=
$_server["http_client_ip"];
}
if
(!empty($_server['http_x_forwarded_for']))
{
$ips
=
explode
(",
",
$_server['http_x_forwarded_for']);
if
($ip)
{
array_unshift($ips,
$ip);
$ip
=
false;
}
for
($i
=
0;
$i
<
count($ips);
$i++)
{
if
(!eregi
("^(10|172.16|192.168).",
$ips[$i]))
{
$ip
=
$ips[$i];
break;
}
}
}
return
($ip
?
$ip
:
$_server['remote_addr']);
}
echo
get_real_ip();
?

///////////////////////////////////////////////
php获取ip的算法:
?php
if
($http_server_vars["http_x_forwarded_for"])
{
$ip
=
$http_server_vars["http_x_forwarded_for"];
}
elseif
($http_server_vars["http_client_ip"])
{
$ip
=
$http_server_vars["http_client_ip"];
}
elseif
($http_server_vars["remote_addr"])
{
$ip
=
$http_server_vars["remote_addr"];
}
elseif
(getenv("http_x_forwarded_for"))
{
$ip
=
getenv("http_x_forwarded_for");
}
elseif
(getenv("http_client_ip"))
{
$ip
=
getenv("http_client_ip");
}
elseif
(getenv("remote_addr"))
{
$ip
=
getenv("remote_addr");
}
else
{
$ip
=
"unknown";
}
echo
"你的ip:".$ip
;
?

///////////////////////////////////////////////
?php
if(getenv('http_client_ip'))
{
$onlineip
=
getenv('http_client_ip');
}
elseif(getenv('http_x_forwarded_for'))
{
$onlineip
=
getenv('http_x_forwarded_for');
}
elseif(getenv('remote_addr'))
{
$onlineip
=
getenv('remote_addr');
}
else
{
$onlineip
=
$http_server_vars['remote_addr'];
}
echo
$onlineip;
?

阅读全文

与php获取客户端信息相关的资料

热点内容
h1z1选什么服务器 浏览:482
苹果版三国杀怎么在安卓上下载 浏览:726
安润国际app在哪里下载 浏览:436
iospdf教程下载 浏览:330
加密货币换手率300表示什么 浏览:725
手机wps新建文件夹存照片 浏览:397
单片机rgbled 浏览:961
怎么通过文件加密后发给微信好友 浏览:90
用虚拟机编程 浏览:821
公司代理服务器有什么要求 浏览:244
服务器和数据库怎么联系 浏览:633
hbase配置压缩 浏览:918
java000 浏览:479
华为手机文件夹的字体颜色 浏览:636
安卓怎么换相机 浏览:935
华为相片文件夹怎么删除重复照片 浏览:316
plc编程视频教程大全 浏览:940
直播用哪个app播放背景音乐 浏览:852
点歌机系统app在哪里下载 浏览:612
javadate类型转换string 浏览:696