Ir para conteúdo

POWERED BY:

Arquivado

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

Daniel Ribeiro Gomes

Include remoto: como fazer?

Recommended Posts

Oi pessoal!

 

Gostaria de saber se existe a possibilidade de eu utilizar o comando include() com um endereço remoto.

 

Outra coisa, como eu faço pra saber se meu host (no caso, UOL) aceita esse tipo de socket: fsockopen? Mais especificamente:

 

<?php
$ip= "174.36.5.99";
$port= "6900";

@$fp = fsockopen ($ip ,$port , $errno, $errstr, 1);
if (!$fp)
echo '<font color="#FF0000"><b>Offline</b></font>';

else
echo'<font color="#66FF00"><b>Online</b></font>';

?>

Aguardo resposta, abraço!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Gostaria de saber se existe a possibilidade de eu utilizar o comando include() com um endereço remoto.

Creio que sim, mas só ira incluir o HTML enviado pelo servidor.

Se pretende incluir um script, não vai dar certo.

 

Mas como disse, creio que nem o HTML será incluido (não sei, talvez sim). Basta testar e ver o que retorna ;)

 

Outra coisa, como eu faço pra saber se meu host (no caso, UOL) aceita esse tipo de socket: fsockopen? Mais especificamente:

Rode o arquivo no teu host uai. Melhor maneira de saber.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Gostaria de saber se existe a possibilidade de eu utilizar o comando include() com um endereço remoto.

Creio que sim, mas só ira incluir o HTML enviado pelo servidor.

Se pretende incluir um script, não vai dar certo.

 

Mas como disse, creio que nem o HTML será incluido (não sei, talvez sim). Basta testar e ver o que retorna ;)

 

Outra coisa, como eu faço pra saber se meu host (no caso, UOL) aceita esse tipo de socket: fsockopen? Mais especificamente:

Rode o arquivo no teu host uai. Melhor maneira de saber.

 

Não, não nesse sentido que perguntei.

 

É evidente que já testei o arquivo, e não rodou.

 

Quero saber se existe um jeito simples de ativar esse tipo de socket pelo cpanel ou algo parecido.

 

Existe?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Gostaria de saber se existe a possibilidade de eu utilizar o comando include() com um endereço remoto.

Caso allow_url_fopen e allow_url_include estejam habilitados e o protocolo utilizado for suportado,o output será redirecionado para a saida padrão.

---

Outra coisa, como eu faço pra saber se meu host (no caso, UOL) aceita esse tipo de socket: fsockopen? Mais especificamente:

Isso é uma função do núcleo do PHP e não um tipo de socket.

---

É evidente que já testei o arquivo, e não rodou.

O que aconteceu?Poste os erros notados/retornados...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ja passei por isso, pois meu site é hospedado la tambem.

Procurei no blog deles, e achei a resposta.

É a seguinte:

 

Crie um arquivo .htaccess com o seguinte conteudo.

 

php_value allow_url_fopen On
php_value allow_url_include 1
php_value safe_mode Off

Salve e coloque na raiz do site.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ja passei por isso, pois meu site é hospedado la tambem.

Procurei no blog deles, e achei a resposta.

É a seguinte:

 

Crie um arquivo .htaccess com o seguinte conteudo.

 

php_value allow_url_fopen On
php_value allow_url_include 1
php_value safe_mode Off

Salve e coloque na raiz do site.

 

Não funcionou André, a resposta é a mesma.

 

O arquivo é só .htaccess mesmo?

 

Vai na pasta public_html ou na anterior?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Que resposta o arquivo dá?

Ja pediram acima e estou pedindo de novo.

 

Que erro aparece?

 

O código é esse, a resposta que ele traz é o if (!$ip). Aparece "Offline".

 

Mas era pra aparecer ONLINE.

 

<?php
$ip= "174.36.5.99";
$port= "6900";

@$fp = fsockopen ($ip ,$port , $errno, $errstr, 1);
if (!$fp)
echo '<font color="#FF0000"><b>Offline</b></font>';

else
echo'<font color="#66FF00"><b>Online</b></font>';

?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Roda esse arquivo no teu host, copia tudo o que aparecer e posta aqui:

 

<?php

ini_set('error_reporting', E_ALL);
ini_set('display_errors', '1');
ini_set('short_open_tag', '0');
set_magic_quotes_runtime(0);

$url = 'http://174.36.5.99/';
$conteudo = file_get_contents($url);

?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Roda esse arquivo no teu host, copia tudo o que aparecer e posta aqui:

 

<?php

ini_set('error_reporting', E_ALL);
ini_set('display_errors', '1');
ini_set('short_open_tag', '0');
set_magic_quotes_runtime(0);

$url = 'http-~~-//174.36.5.99/';
$conteudo = file_get_contents($url);

?>

 

O navegador apresenta uma tela em branco.

 

Nada acontece.

 

http://ragnacorp.com/file.php

 

Experimente você mesmo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então o problema nao é na uol, e sim o teu código.

Roda isso e posta o que aparecer.

 

<?php
ini_set('error_reporting', E_ALL);
ini_set('display_errors', '1');
ini_set('short_open_tag', '0');
set_magic_quotes_runtime(0);

$ip = '174.36.5.99';
$por t= 6900;

$fp = fsockopen ($ip, $port, $errno, $errstr, 1);

if (!$fp) {
echo '<font color="#FF0000"><b>Offline</b></font>';
} else {
echo'<font color="#66FF00"><b>Online</b></font>';
}

?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Meu código funciona perfeitamente em outro servidor.

 

Bom, nesse caso, coloque exatamente isso aqui e cole aqui a saída:

 

$ip= "174.36.5.99";
$port= 6900;
$errno = 0;
$errstr = null;

$fp = fsockopen ($ip ,$port , $errno, $errstr);

var_dump( $fp , $errno , $errstr );

Compartilhar este post


Link para o post
Compartilhar em outros sites

Também não funcionou

 

heheh, que não ia funcionar eu sabia, o que eu quero é a saida:

 

var_dump( $fp , $errno , $errstr );

Compartilhar este post


Link para o post
Compartilhar em outros sites

bool(false) int(110) string(20) "Connection timed out"

 

Humm, eu estava esperando um bool(false) e int(0), hehehhe

Certo, tente aumentar o tempo limite para conexão e novamente coloque a resposta:

 

$ip= "174.36.5.99";
$port= 6900;
$errno = 0;
$errstr = null;

//O valor do timeout é passado em segundos, esse número gigante é apenas para testes, depois você terá que ajustá-lo caso
//consiga estabelecer a conexão.
$fp = fsockopen( $ip , $port , $errno , $errstr , 10000 );

var_dump( $fp , $errno , $errstr );

if ( $fp ) fclose( $fp ); //adicionado apenas para, em caso de sucesso, a conexão ser fechada.

PS: Esse código pode ainda não funcionar, por isso é *FUNDAMENTAL* que você coloque novamente a saída.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Também tenho este mesmo problema do include remoto... Gostaria de usar isso para não ter de colocar o script de acesso ao meu banco da dados em todos os sites que faço... para evitar um futuro Hackeamento.. ou coisa do tipo...

 

No meu caso... utilizo o locaweb como servidor de hospedagem... e fiz o lance de adicionar o HTACCESS mas não alterou nada na configuração do servidor...

E notei também.. que acessando o painel do locaweb... o meu arquivo foi renomeado para (1).htaccess... mesmo eu soh botando o .htaccess {!!}

 

 

E... uma dúvida... se eu permitir o acesso remoto aos meus arquivos por include... eu não ficaria aberto a invasões... tipo.. se o cara conhecer o meu estilo de programar... ele pode acessar os meus arquivos e roubar informações???

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.