這是行不通的,它沒有把我的錯誤過於爲什麼我的環回地址是:: 1而不是127.0.0.1?
if($_SERVER['REMOTE_ADDR'] == '127.0.0.1') {
//My code
}
//NOTE: echo $_SERVER['REMOTE_ADDR'] is "::1"
這是行不通的,它沒有把我的錯誤過於爲什麼我的環回地址是:: 1而不是127.0.0.1?
if($_SERVER['REMOTE_ADDR'] == '127.0.0.1') {
//My code
}
//NOTE: echo $_SERVER['REMOTE_ADDR'] is "::1"
一切看起來罰款在你的代碼,試試這個,看看,如果是IPv6的,這應該工作
if($_SERVER['REMOTE_ADDR'] == '::1') {
//Your Code
}
這工作,但有更多的參與,爲什麼':: 1' – 2013-04-26 07:42:41
@AcidicCloud的http:// en.wikipedia.org/wiki/Localhost – 2013-04-26 07:43:46
認真? -1?哈哈哈 – 2013-04-26 07:44:29
的你得到:: 1的原因是你正在使用ipv6。關閉它或在您的語句中同時具有127.0.0.1和:: 1。
if($_SERVER['REMOTE_ADDR'] == '::1' || $_SERVER['REMOTE_ADDR'] == '127.0.0.1') {
//Your Code
}
即使您遷移到另一臺服務器,這應該使其安全。
如前所述,服務器配置了IPv6地址來處理它和:: 1的IPv6相當於127.0.0.1
的,因爲你在本地主機是:
if($_SERVER['REMOTE_ADDR'] == '127.0.0.1' || $_SERVER['REMOTE_ADDR'] == '::1') {
//Your code
}
嘗試'回聲$ _SERVER [ 'REMOTE_ADDR'];'。它輸出什麼? – 2013-04-26 07:41:03
@STTLCU它呼應的':: 1',但是爲什麼呢? – 2013-04-26 07:41:45
你使用的是ipv6嗎? – Tan 2013-04-26 07:43:45