Capturando Redirecionamento?
Started By B!ö$, 20/07/2007, 13:29
9 replies to this topic
#1
Posted 20/07/2007, 13:29
Olá pessoal, eu gostaria de captura a url que seria redicionada.
ex:
Redirecionamento = http://www.regnow.co...amp;vendor=4276
Url Original = http://www.ghcentre.com/
eu gostaria de opegar a url orginal do redirecionamento.
Obrigado.
ex:
Redirecionamento = http://www.regnow.co...amp;vendor=4276
Url Original = http://www.ghcentre.com/
eu gostaria de opegar a url orginal do redirecionamento.
Obrigado.
#2
Posted 20/07/2007, 14:23
Portal BatePapoBrasil
URL: www.batepapobrasil.com
----------------------------
Site desenvolvidos
URL: VitrineABC :: Alugue Litoral :: OrtodontiaLago
URL: www.batepapobrasil.com
----------------------------
Site desenvolvidos
URL: VitrineABC :: Alugue Litoral :: OrtodontiaLago
#3
Posted 20/07/2007, 14:38
Ele retorna isso:
Array ( [scheme] => http [host] => www.regnow.com [path] => /softsell/visitor.cgi [query] => affiliate=22260&action=site&vendor=4276 )
Quando era pra retorna a url que seria redicionado...
Array ( [scheme] => http [host] => www.regnow.com [path] => /softsell/visitor.cgi [query] => affiliate=22260&action=site&vendor=4276 )
Quando era pra retorna a url que seria redicionado...
Edição feita por: B!ö$, 20/07/2007, 14:40.
#4
Posted 20/07/2007, 14:41
Olha...
Sei que não é da minha conta, mas, pra que você quer fazer isso???
E porque não digitar a URL diretamente.
Sei que não é da minha conta, mas, pra que você quer fazer isso???
E porque não digitar a URL diretamente.
Portal BatePapoBrasil
URL: www.batepapobrasil.com
----------------------------
Site desenvolvidos
URL: VitrineABC :: Alugue Litoral :: OrtodontiaLago
URL: www.batepapobrasil.com
----------------------------
Site desenvolvidos
URL: VitrineABC :: Alugue Litoral :: OrtodontiaLago
#5
Posted 20/07/2007, 15:45
vo lhe explicar, tenho um script, que numa das partes dele é recebe urls, e se por a caso, for recibo este tipo de url, gostaria de pegar a url para qual seria redicionado.
preciso de ajuda.
grato.
preciso de ajuda.
grato.
#6
Posted 23/07/2007, 02:24
Certo já que ninguém conseguiu me ajudar, será que me podia dizer se teria como eu exibir um conteúdo HTTPS? se sim como? a url seria esta: https://www.regnow.com/affiliatepriv/
Abraços
Abraços
#7
Posted 23/07/2007, 03:43
Bem respondendo sua pergunta Nº 1, isso que vc quer fazer é um pouco mais complicado do que parece, pois envolve cabeçalhos HTTP, sendo assim não há como saber qual URL o script vai apontar sem acessa-lo.
Logo a solução básica é fazer com que o PHP simule ser um Browser e recuperar os cabeçalhos que são enviados pelos servidor e em geral omitidos pelos Browser (por meras comodidade) e pegar a URL do cabeçalho "Location: XXXX", que é usado para fazer esse tipo de redireção.
Usando como base um Scriptizinho HTTP achado na WEB, em seu caso ficaria assim uma funçãoziha ... mamão com açucar, eu testei e tá funcionado.
Básicamente é isso, quanto a segunda pegunta o que vc diz com "extrair conteúdo HTTPS", eu acessei essa URL e deu senha não consegui ver nada...
Logo a solução básica é fazer com que o PHP simule ser um Browser e recuperar os cabeçalhos que são enviados pelos servidor e em geral omitidos pelos Browser (por meras comodidade) e pegar a URL do cabeçalho "Location: XXXX", que é usado para fazer esse tipo de redireção.
Usando como base um Scriptizinho HTTP achado na WEB, em seu caso ficaria assim uma funçãoziha ... mamão com açucar, eu testei e tá funcionado.
<?php // Modo de Usar (URL, Método, Local, Valores, Browser [se desejar]) $redirecao = LocationURL("www.regnow.com", "GET", "/softsell/visitor.cgi", "affiliate=22260&action=site&vendor=4276"); echo $redirecao; // Exibe qual URL ele redireciono :P // FUnção Propriamente dita function LocationURL($host, $method, $path, $data, $useragent = 0) { if (empty($method)) { $method = "GET"; } $method = strtoupper($method); $fp = fsockopen($host, 80); if ($method == "GET") { $path .= ("?" . $data); } fputs($fp, "$method $path HTTP/1.1\r\n"); fputs($fp, "Host: $host\r\n"); fputs($fp,"Content-type: application/x-www-form- urlencoded\r\n"); fputs($fp, "Content-length: " . strlen($data) . "\r\n"); if ($useragent) { fputs($fp, "User-Agent: MSIE\r\n"); } fputs($fp, "Connection: close\r\n\r\n"); if ($method == "POST") { fputs($fp, $data); } while (!feof($fp)) { $buf .= fgets($fp,128); } fclose($fp); // Aqui começa minha alteração $all_http = explode("\r\n", $buf); foreach ($all_http as $values) { if (substr(strtolower($values), 0, 10) == "location: ") { return substr($values, 10, strlen($values)); break; } } } ?>
Básicamente é isso, quanto a segunda pegunta o que vc diz com "extrair conteúdo HTTPS", eu acessei essa URL e deu senha não consegui ver nada...
#9
Posted 23/07/2007, 22:09
Solução mais simples e com menos POG:
<?php $uri = 'http://www.regnow.com/softsell/visitor.cgi?affiliate=22260&action=site&vendor=4276'; foreach (get_headers($headers) as $pair) { @list($header, $value) = explode(':', $pair, 2); if (strtolower($header) == 'location') { $uri = $value; } } print $uri; ?>[]s Até mais
#10
Posted 29/07/2007, 18:07
LOL, sempre você `tisorando` meu barato ...
Mas eu sempre esqueço dessas funções menos conhecidas e usadas , sorte sua ter uma memória melhor que a minha - porém a minha tem 1 vantagem funciona em PHP < 5, sendo que a maioria dos serves por ai ainda 4.x.x.
Mas assim tem um pequeno erro no se esquema, vc coloco o nome das variaveis erradas ...
Mas eu sempre esqueço dessas funções menos conhecidas e usadas , sorte sua ter uma memória melhor que a minha - porém a minha tem 1 vantagem funciona em PHP < 5, sendo que a maioria dos serves por ai ainda 4.x.x.
Mas assim tem um pequeno erro no se esquema, vc coloco o nome das variaveis erradas ...
.... // $uri no ludar do $headers; ou iverção de $headers para $uri fica a escolha .... foreach (get_headers($uri) as $pair) { ....
Edição feita por: sk15, 29/07/2007, 18:09.
0 user(s) are reading this topic
0 membro(s), 0 visitante(s) e 0 membros anônimo(s)