warning readfile

Ho da poco traslocato il sito in joomla che sto realizzando da un webserver ad un altro. Magicamente alcune funzioni hanno smesso di funzionare.

In particolare mi riferisco ad una semplice readifile().

il codice davvero banale:

<?php
$url = $mainframe->getCfg('live_site');
$url .= "/index2.php?option=com_remository&func=select&id=$id_container&no_html=0";
readfile($url);
?>

questo dovrebbe aprire la pagina index2.php ecc.. ecc. all'interno della pagina che sto visualizzando. invece viene riscontrato il seguente warning:

Warning: readfile(http://www.creativitycontest.it/index2.php?option=com_remository&func=select&id=7&no_html=0) [function.readfile]: failed to open stream: HTTP request failed! HTTP/1.1 404 OK

La pagina "http://www.creativitycontest.it/index2.php?option=com_remository&func=select&id=7&no_html=0" ovviamente raggiungibile ma per qualche arcano motivo readfile non la trova. No funziona con nessuna pagina, ho fatto test con www.google.it, con fileditesto.txt. Non apre nulla. Il tutto sul vecchio webserver funzionava alla perfezione.

Ho notato che sul vecchio webserver c'era php versione 5.1.1. mentre sul nuovo c' php versione 4.4.4. Possibile che questa versione ha problemi con readfile?

La safe mode disabilitata, quindi il problema non nemmeno legato a quello.

Ringrazio per l'attenzione e disponibile a fornire ulteriori informazioni qualora servissero.

inviato 9 anni fa
Tro4
Tro4
1
X 0 X

forse il nuovo server non pu accedere a siti esterni? Hai provato a contattare il gestore del server?

:bye:

risposto 9 anni fa
Gianni Tomasicchio
X 0 X

Grazie dell'attezione.

Potrei provare a contattare il gestore, ma in ogni caso il file index2.php ecc... fa parte del mio sito, non esterno.

Mi incuriosisce molto l'errore che viene restituito: "404 OK". in genere l'errore 404 indica un file non trovato e mi aspettavo come stringa di testo qualcosa tipo "file not found" o qualcosa di simile. In genere l'ok collegato ad un 200.

Potrebbe trattarsi di permessi ai file? io ho fatto varie prove ed al momento i file interpellati hanno 755.

risposto 9 anni fa
Tro4
Tro4
1
X 0 X

non si tratta di questione di permessi perch tu accedi al file via rete (http) non attraverso il filesystem

:bye:

risposto 9 anni fa
Gianni Tomasicchio
X 0 X

quindi il problema in cosa potrebbe consistere?

Al momento sto provando a risolvere con un iframe.

<?php 
$url = $mainframe->getCfg('live_site');
$url .= "/index2.php?option=com_remository&func=select&id=$id_container&no_html=0";
//readfile($url);
echo '<IFRAME frameborder="0" scrolling="auto" src="'.$url.'" width="100%" height="100%">

 [Il tuo programma utente non supporta i frame o  attualmente configurato
 per non mostrare i frame. Tuttavia, puoi visitare
 <A href=index.php?option=com_remository&func=select&id='.$id_container.'">il documento collegato.</A>]
 </IFRAME>';
?>

Il problema che credo non sia possibile realizzare un iframe dinamico, quindi all'aumentare dei file inviati, la pagina da aprire si ingrandisce e lo spazio prestabilito per l'iframe non basta, facendo comparire la tollbar. questo non avveniene con readfile.

Per quanto riguarda i link esterni, ho verificato, ed effettivamente il webserver non permette di aprire file esterni (ho provato ad aprire google con l'iframe e restituisce errore). Ma ripeto io sto cercando di aprire un file interno al mio sito.

risposto 9 anni fa
Tro4
Tro4
1
modificato 9 anni fa
X 0 X

con un iframe il browser ad aprire la pagina, non il server. Con fopen ovviamente il server a farlo

:bye:

risposto 9 anni fa
Gianni Tomasicchio
X 0 X

Ecco.... scoperto l'arcano....o almeno credo.

Il dns registrato ma non c' ancora il redirect al nuovo ip. io posso accedere perch ho modificato il mio file host, ma in generale la pagina non raggiungibile. Quindi quando chiamo readfile, questo cerca di aprire una pagina non raggiungibile e mi restituisce quell'errore.

Infatti se come indirizzo di readfile metto www.creativitycontest.it mi visualizza un messaggio di errore personalizzato dalla mia azienda che dice che la pagina non attualmente raggiungibile.

Quasi un'intera giornata di lavoro buttata per questa cosa :(.

Grazie mille dell'attenzione. Per il secondo problema apro un nuovo topic.

risposto 9 anni fa
Tro4
Tro4
1
X 0 X

certo ke strana tanto sta cosa....

Spiego: ho registrato i dns "www.creativitycontest.it" e "creativitycotnest.it" (senza www). Provo www.creativitycontest.it e viene regolarmente aperto il sito. Provo creativitycontest.it e il browser mi restituisce la pagina di errore. dico vabb, pazienza.

Poi controllo la funzione readfile, che mi ha dato tanti grattacapi, e continua a dare errore. Provo ancora a fargli aprire la pagina www.creativitycontest.it e mi restituisce la pagina di errore... Sbatto la testa contro il monitor un paio di minuti, poi provo a fargli aprire creativitycontest.it (senza www) e magicamente lo apre!! Ho quindi eliminato www dalla stringa di indirizzo del readfile e tutto funzioan a meraviglia. Sono impazzito io, il mio webserver o c' una spiegazione scientifica a tutto ci?

risposto 9 anni fa
Tro4
Tro4
1
X 0 X

forse i dns anno aggiornato un indirizzo ma non ancora l'altro?!?

risposto 9 anni fa
Gianni Tomasicchio
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda