8 messaggi dal 10 maggio 2002
Salve,
qualcuno potrebbe aiutarmi ? Ho un problema che non riesco a risolvere...
Quando provo a leggere in ASP un file esterno (di qualsiasi tipo: testo, xml, ecc...) tramite l'oggetto XMLHTTP ottengo un ritardo mostruoso nel caricamento della pagina e inoltre il file non viene letto.
Il codice è il seguente:


Set objXMLHTTP = Server.CreateObject("MSXML2.ServerXMLHTTP")
objXMLHTTP.open "GET", "http://dominio/nomefile", false
objXMLHTTP.send


Ho provato anche con la versione precedente senza alcun risultato:


set objXMLHTTP = server.createobject("Microsoft.XMLHTTP")
objXMLHTTP.open "GET", "http://dominio/nomefile", false
objXMLHTTP.send

Questo avviene sul server internet di un provider (A), mentre su un altro provider (B) lo stesso codice funziona.
Accertato che chi si trova in difetto è il provider (A) e non il mio codice sarei curioso nel capire perchè il provider (A) in questione si comporta così. Ho ipotizzato 3 casi
1) il firewall ha qualche porta bloccata
2) un antivirus dà fastidio
3) La versione di Internet Explorer installata sul server non piace al codice (? penso che sia alquanto improbabile)

C'è qualche guru che potrebbe illuminarmi?
Grazie.


8 messaggi dal 10 maggio 2002
Ok se mi avete risposto in tanti può darsi che sia colpa mia e che non mi abbiate capito...

Partiamo dall'esempio fatto: il codice è preso direttamente da aspitalia e sono le news di Punto Informatico.
Sono funzionanti sul server di Aruba mentre (lo stesso codice) sul server di un altro provider (non vi dico quale così gli risparmio la pubblicità negativa...) non riesce a recuperare il file.

Il provider in questione non ha fatto nulla per ovviare a questo problema, anzi per tutta risposta ha detto che il mio codice è sbagliato (!) (scusate, non è il "mio" codice, l'ho copiato e incollato direttamente da aspitalia....) e tra email chilometriche mi sono stancato di discuterne con loro...

Ora ho 2 opzioni:
1) Cambio provider (e pensare che l'ho cambiato perchè questo mi sembrava meglio!!! :-( )
2) Dimostro che il problema è il suo e mi tengo il provider.

Sicuramente ci sarà qualcuno che ha avuto lo stesso problema e lo ha risolto, premetto che sul mio server interno (quello dove sviluppo: win2k e IIS5) il codice in questione ha funzionato dal primo momento!!!

Su MSDN non ho trovato nulla... Boh!

Please help me!

sembra un problema di proxy/firewall.
dopo nimda molti provider hanno chiuso la porta 80 in uscita, per evitare che queste "robe" escano dai loro server.
prova a verificare, sicuramente è qualcosa del genere.
io proverei, ad esempio, a vedere il codice HTTP che ti restituisce la chiamata...

<hr color="#31659C" noshade size=1>
Daniele Bochicchio
<b>Content manager di http://www.aspitalia.com</b>

ASP 3 per esempi il mio libro

Daniele Bochicchio | ASPItalia.com | Libri
Chief Operating Officer@iCubed
Microsoft Regional Director & MVP
8 messaggi dal 10 maggio 2002
Scusami non ti seguo, ma il problema è che il metodo Send non mi restituisce nulla, se provo a stampare:

On error resume next
StrURL = "http://www.punto-informatico.it/fader/pixmla.txt"
Set objXMLHTTP = Server.CreateObject("MSXML2.ServerXMLHTTP")
objXMLHTTP.open "GET",StrURL,false
objXMLHTTP.send
response.write objXMLHTTP.statusText

mi restituisce UNKNOWN. Togliendo la On Error iniziale mi restituisce l'errore:

msxml3.dll error '80072efd'
Impossibile stabilire una connessione con il server

Ieri mi è capitata una cosa strana : mentre stavo "lottando" con il codice in questione le news sono state visibili per un certo periodo, poi di nuovo il nulla.
Analizzando il file di log ho visto che nel momento in cui le news erano visualizzate sul mio browser (con IE6.0 e HTTP1.1) c'era un altro utente che aveva aperto la pagina (con IE5.0 e HTTP1.0)

c'entra poco, è bloccato a livello di server, perchè la richiesta viene fatta dal tuo server, non dal tuo browser web.

<hr color="#31659C" noshade size=1>
Daniele Bochicchio
<b>Content manager di http://www.aspitalia.com</b>

ASP 3 per esempi il mio libro

Daniele Bochicchio | ASPItalia.com | Libri
Chief Operating Officer@iCubed
Microsoft Regional Director & MVP
8 messaggi dal 10 maggio 2002
Allora io mi immagino questo scenario:

Server web = IIS5 e WIN2k con HTTP 1.0

Utente (A) che riesce a visualizzare le news: HTTP 1.0
Io che non vedo nulla: IE6 e HTTP 1.1

Con questo scenario, se il server ha la cache attivata è possibile che l'utente A apra la pagina, la visualizzi correttamente e (contemporaneamente) anche io le riesca a vedere, ma non appena la cache viene "aggiornata" e l'utente rilascia la pagina, mi ricompare l'errore?

Cioè quello che mi chiedo io: esiste una incompatibilità tra http 1.0 e 1.1 ? Se sì quali problemi potrebbero nascere aggiornando il server ad http 1.1 ?

IIS5 lavora già con HTTP1.1

ma tu stai facendo un casino allucinante.
non significa nulla che un IE5 abbia visto quelle news, perchè di fatto non è IE5 a richiedere quella pagina e non esiste cache.

è il server che la richiede e se sta dietro un proxy che blocca la porta 80, non c'è verso di risolverlo, se non facendo rimuovere questo blocco.

<hr color="#31659C" noshade size=1>
Daniele Bochicchio
<b>Content manager di http://www.aspitalia.com</b>

ASP 3 per esempi il mio libro

Daniele Bochicchio | ASPItalia.com | Libri
Chief Operating Officer@iCubed
Microsoft Regional Director & MVP
8 messaggi dal 10 maggio 2002
Non sai quanto mi stia incasinando... Pensa che tutto funzionava a dovere su aruba, poi da quando abbiamo cambiato è uno stress continuo..
Il problema è che i signori del provider in questione mi dicono che la porta 80 è aperta...
Ma allora perchè ogni tanto le news vengono visualizzate ?

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.