當前位置:首頁 » 編程語言 » 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 瀏覽:742
sql語句notin什麼意思 發布:2025-09-22 22:15:52 瀏覽:826