当前位置:首页 » 编程语言 » php外网ip

php外网ip

发布时间: 2025-09-22 22:23:18

A. php判断IP是中国IP还是外国IP

//返回ip所在的区域外国ip精确到国名
functiongetcposition($ip){

try{
$res1=file_get_contents("http://ip.taobao.com/service/getIpInfo.php?ip=$ip");
$res1=json_decode($res1,true);

if($res1["code"]==0){
return$res1['data']["country"].$res1['data']["region"].$res1['data']["city"]."_".$res1['data']["isp"];
}else{
return"未能获取";
}
}catch(Exception$e){
return"未能获取";
}
}

B. PHP如何获取外网IP地址,类似于百度查询到的IP,网上的方法,查询到的都是局域网(内网)的IP,

发一个函数给你.

/**
*获取客户端IP地址
*@paraminteger$type返回类型0返回IP地址1返回IPV4地址数字
*@paramboolean$adv是否进行高级模式获取(有可能被伪装)
*@returnmixed
*/
functionget_client_ip($type=0,$adv=false){
$type=$type?1:0;
static$ip=NULL;
if($ip!==NULL)return$ip[$type];
if($adv){
if(isset($_SERVER['HTTP_X_FORWARDED_FOR'])){
$arr=explode(',',$_SERVER['HTTP_X_FORWARDED_FOR']);
$pos=array_search('unknown',$arr);
if(false!==$pos)unset($arr[$pos]);
$ip=trim($arr[0]);
}elseif(isset($_SERVER['HTTP_CLIENT_IP'])){
$ip=$_SERVER['HTTP_CLIENT_IP'];
}elseif(isset($_SERVER['REMOTE_ADDR'])){
$ip=$_SERVER['REMOTE_ADDR'];
}
}elseif(isset($_SERVER['REMOTE_ADDR'])){
$ip=$_SERVER['REMOTE_ADDR'];
}
//IP地址合法验证
$long=sprintf("%u",ip2long($ip));
$ip=$long?array($ip,$long):array('0.0.0.0',0);
return$ip[$type];
}

如果是本地测试的话,获取到的是127.0.0.1

C. 本机可以访问,外网IP无法访问本机的web工程

在探讨为什么内网IP能访问本机web工程,而外网IP无法访问时,我们首先需要理解web服务器的运行环境与网络配置。

通常,web工程的运行语言可以是多种,包括但不限于Java、Python、Ruby、PHP或Node.js等。语言选择取决于项目需求、开发团队熟悉程度以及性能考量。

至于提到的IIS与JAVA,它们代表了两种不同的web服务器运行环境。IIS主要用于Windows操作系统,支持多种编程语言,如ASP.NET、PHP等;而Java则通常与开源的Apache Tomcat或Jetty服务器关联,提供高性能的web应用运行环境。因此,使用IIS或Java开发的web工程在理论上都能运行。

访问问题的关键在于网络配置。在局域网(内网)环境中,不同设备间的通信通常更为顺畅。内网IP能够访问本机web工程,是因为它们位于同一网络中,数据包可以通过局域网直接传输。

然而,当尝试从外网访问时,问题可能出在防火墙、路由规则或NAT(网络地址转换)设置上。网络设备(如路由器)可能阻止外部IP直接访问内网设备,除非特别配置了端口映射或NAT转发规则。

解决方法包括检查防火墙设置,确保没有阻止特定端口(如80或443)的通信;调整路由器或NAT设置,允许外部IP通过特定端口访问内网设备;或者使用公共IP服务(如DDNS),通过域名而非直接IP地址访问。

综上所述,内网IP能访问本机web工程,而外网IP无法访问的问题,通常与网络配置而非语言或服务器选择有关。合理调整网络设置,确保端口开放和路由规则正确配置,可以解决访问问题。

D. 安装PHPnow环境后,我打开http://127.0.0.1/结果不显示此服务器互联网IP!请问是怎么回事

需要用户名和密码
的原因原因是你的网站根目录权限问题。
你要把本机建立的服务器绑定到你的域名可以,但是有很多限制性因素。
1. 如果是有独立的外网IP并且是静态的话直接将域名解析到你的IP就好了。
2. 如果是普通宽带,那么你的IP是动态的,直接解析就不行了,因为你的IP会变的,只有通过动态域名解析(例如花生壳等),然后把域名用CNAME记录解析到动态域名上。
3. 如果是小区宽带,不但要做第二种情况的事还要找小区宽带让他们在路由器上把80端口映射到你的机器上。

楼主还有什么不明白给我留言。

E. php如何获取服务器外网的ip

function real_server_ip(){
static $serverip = NULL;

if ($serverip !== NULL){
return $serverip;
}

if (isset($_SERVER)){
if (isset($_SERVER['SERVER_ADDR'])){
$serverip = $_SERVER['SERVER_ADDR'];
}
else{
$serverip = '0.0.0.0';
}
}
else{
$serverip = getenv('SERVER_ADDR');
}

return $serverip;
}

热点内容
华为怎么下载安卓的光遇 发布:2025-09-23 00:02:29 浏览:500
配置pcr体系时需要加哪些 发布:2025-09-22 23:53:44 浏览:568
塔罗牌算法 发布:2025-09-22 23:32:57 浏览:26
荣耀v四零手机设置锁密码在哪里 发布:2025-09-22 23:32:13 浏览:355
安卓哪个版本支持蓝牙 发布:2025-09-22 23:21:17 浏览:588
货拉拉苹果和安卓手机哪个抢单快 发布:2025-09-22 23:16:58 浏览:239
庙宇算法 发布:2025-09-22 23:01:30 浏览:341
安卓手机如何调出桌面插件 发布:2025-09-22 22:48:16 浏览:526
php外网ip 发布:2025-09-22 22:23:18 浏览:741
sql语句notin什么意思 发布:2025-09-22 22:15:52 浏览:826