A. php中如何獲取伺服器IP
$_SERVER['SERVER_ADDR']獲取伺服器的IP地址
B. PHP如何獲取伺服器外網IP
1.關於外網IP變更問題,如果你手頭上有 IP資源,建議綁定。就是你申請的靜態IP。
2.如果自己沒有靜態IP,那麼如果你有域名,可以通過 花生殼這些軟體,綁定自己的伺服器。這樣就算IP怎樣變化,直接訪問域名就可以了。
2.1.花生殼帶有一些二級域名的,功能也差不多。
-----------------------------------
另外,可以寫一個功能cURL,讓你的伺服器定期訪問一個站點(私有站點,要許可權進入),這個站點你可以獲取訪問者的IP。
C. php到底怎麼獲取IP地址,為什麼三種方法獲取的IP都不一樣
php獲取真實IP地址,參考方法如下:
functionGetIP(){
if(getenv("HTTP_CLIENT_IP")&&strcasecmp(getenv("HTTP_CLIENT_IP"),"unknown"))
$ip=getenv("HTTP_CLIENT_IP");
elseif(getenv("HTTP_X_FORWARDED_FOR")&&strcasecmp(getenv("HTTP_X_FORWARDED_FOR"),"unknown"))
$ip=getenv("HTTP_X_FORWARDED_FOR");
elseif(getenv("REMOTE_ADDR")&&strcasecmp(getenv("REMOTE_ADDR"),"unknown"))
$ip=getenv("REMOTE_ADDR");
elseif(isset($_SERVER['REMOTE_ADDR'])&&$_SERVER['REMOTE_ADDR']&&strcasecmp($_SERVER['REMOTE_ADDR'],"unknown"))
$ip=$_SERVER['REMOTE_ADDR'];
else
$ip="unknown";
return($ip);
}
D. php怎麼獲取伺服器內網ip
//伺服器在區域網的話,那麼顯示的則是內網IP
$onlineip=$_SERVER['REMOTE_ADDR'];
echo$onlineip;
E. 如何獲取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 獲得系統的環境變數:
F. php 修改伺服器IP
1.確認執行該PHP腳本的系統具備修改伺服器IP/子網掩碼/網關的許可權.
2.確認你的PHP運行執行shell_exec的函數,這個函數在安全模式下是被屏蔽的.
3.確認你在shell_exec裡面執行的系統命令行是正確的.
簡單的例子:
$
vi
test.php
#!/usr/bin/php
<?php
$rsl
=
shell_exec("fconfig
eth0
192.168.1.2
netmask
255.255.255.0");
//改ip和子網掩碼的.
$rsl2
=
shell_exec("route
add
default
gw
192.168.1.1");
//設置網關
echo
$rsl."\n".$rsl2;//看看返回的結果.
?>
$
chmod
755
test.php
--
給腳本增加執行的許可權
$
./test.php
參考其他函數:
exec()
system()
等等.
windows下怎麼做?
我又沒錢買windows我怎麼知道!
G. 用php來獲得客戶端伺服器ip的方法
<?php
echo
"當前腳本伺服器的主機名:".gethostbyaddr($_SERVER['REMOTE_ADDR'])."<br
/><hr
/>";
echo
"獲得當前運行PHP腳本(頁面)所在的伺服器的
IP
地址:".$_SERVER['SERVER_ADDR']."<br
/><hr
/>";
echo
"獲得當前運行PHP腳本(頁面)所在的伺服器的
主機名:".$_SERVER['SERVER_NAME'];
echo
'<hr>';
echo
'客戶端ip'.
$_SERVER['REMOTE_ADDR'];
echo
'<br>';
echo
'客戶端ip'.getenv('REMOTE_ADDR');
echo
"<br>";
echo
'伺服器主機ip'.gethostbyname("www.qq.com");
?>
運行出來:
當前腳本伺服器的主機名:XYL-PC
獲得當前運行PHP腳本(頁面)所在的伺服器的
IP
地址:127.0.0.1
獲得當前運行PHP腳本(頁面)所在的伺服器的
主機名:localhost
客戶端ip127.0.0.1
客戶端ip127.0.0.1
伺服器主機ip61.135.169.105
H. php 怎麼獲取伺服器端ip地址
<?php
functiongetIp()
{
$IPaddress='';
if(isset($_SERVER)){
if(isset($_SERVER["HTTP_X_FORWARDED_FOR"])){
$IPaddress=$_SERVER["HTTP_X_FORWARDED_FOR"];
}elseif(isset($_SERVER["HTTP_CLIENT_IP"])){
$IPaddress=$_SERVER["HTTP_CLIENT_IP"];
}else{
$IPaddress=$_SERVER["REMOTE_ADDR"];
}
}else{
if(getenv("HTTP_X_FORWARDED_FOR")){
$IPaddress=getenv("HTTP_X_FORWARDED_FOR");
}elseif(getenv("HTTP_CLIENT_IP")){
$IPaddress=getenv("HTTP_CLIENT_IP");
}else{
$IPaddress=getenv("REMOTE_ADDR");
}
}
return$IPaddress;
}
echogetIp();//就可以輸出用戶的IP地址。
?>
獲取伺服器端ip地址
<?php
functionserverIp(){
if(isset($_SERVER)){
if($_SERVER['SERVER_ADDR']){
$server_ip=$_SERVER['SERVER_ADDR'];
}else{
$server_ip=$_SERVER['LOCAL_ADDR'];
}
}else{
$server_ip=getenv('SERVER_ADDR');
}
return$server_ip;
}
echoserverIp();
?>
此方法在本地不可用。需要上傳至伺服器
如果在本地使用此方法 列印出來的是127.0.0.1
希望對你有幫助