Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

WSP8521

IP retornando ::1

Recommended Posts

olá pessoal, estou querendo capturar o ip da mina maquina utilizando $_SERVER['SERVER_REMOTE'] mas so que o ip esta retornando dessa forma ::1. dei um var_dump no $_SERVER e mostra dessa forma. Como faço pra resolver esse problema. Estou utilizando o wampserver v. 3.0.6. Abaixo segue o link da imagem mostrando o erro.

https://onedrive.live.com/?authkey=%21AF2gpA8VRl8%2Dzj4&cid=155734BCEFCA03AA&id=155734BCEFCA03AA%212869&parId=root&o=OneUp

Compartilhar este post


Link para o post
Compartilhar em outros sites
/**
	 * Get the server variable REMOTE_ADDR, or the first ip of HTTP_X_FORWARDED_FOR (when using proxy)
	 *
	 * @return string $remote_addr ip of client
	 */
	function getRemoteAddr()
	{
		// This condition is necessary when using CDN, don't remove it.
		if (isset($_SERVER['HTTP_X_FORWARDED_FOR']) && $_SERVER['HTTP_X_FORWARDED_FOR'] && (!isset($_SERVER['REMOTE_ADDR']) || preg_match('/^127\..*/i', trim($_SERVER['REMOTE_ADDR'])) || preg_match('/^172\.16.*/i', trim($_SERVER['REMOTE_ADDR'])) || preg_match('/^192\.168\.*/i', trim($_SERVER['REMOTE_ADDR'])) || preg_match('/^10\..*/i', trim($_SERVER['REMOTE_ADDR'])))) {
			if (strpos($_SERVER['HTTP_X_FORWARDED_FOR'], ',')) {
				$ips = explode(',', $_SERVER['HTTP_X_FORWARDED_FOR']);
				return $ips[0];
			} else
				return $_SERVER['HTTP_X_FORWARDED_FOR'];
		}
		return $_SERVER['REMOTE_ADDR'];
	}

Ve se funciona!

Compartilhar este post


Link para o post
Compartilhar em outros sites

O erro seria apenas em ambiente local correto?

Caso sim acredito que isso resolve sem tentar 'adivinhar' o Ip, corrigindo o erro.

http://stackoverflow.com/questions/3699454/should-a-mamp-return-1-as-ip-on-localhost/13649642#13649642

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.