Risoluzione nomi

mercoledì 08 ottobre 2008 - 21.45

senzavento Profilo | Newbie

Ciao a tutti,
ho il seguente problema.. me ne sono accorto cercando di includere un webservice in un progetto in visual studio, ma credo che l'origine del problema sia il sistema operativo o internet explorer.

In pratica ho un webservice locale che gira su http://localhost:53553/ ad esempio, però se scrivo questo indirizzo in internet explorer o altro browser non mi trova nessuna pagina.
Per provare la pagina devo:
sostituire localhost con 127.0.0.1
a questo punto il browser mi mostra il directory listing, seleziono il file webservice .asmx e solo a questo punto mi dà la pagina con i webmethods del webservice
e nella barra degli indirizzi il broser mi mostra http://127.0.0.1:53553/WebServiceAuth.asmx

In visual studio sull'aggiunta di webreference se metto http://127.0.0.1:53553/WebServiceAuth.asmx non mi trova nulla. L'unico modo per farglielo digerire è il seguente:
vado nel browser all'indirizzo http://127.0.0.1:53553/WebServiceAuth.asmx ed aggiungo ?wsdl ossi http://127.0.0.1:53553/WebServiceAuth.asmx?wsdl, il browser mi mostra il codice xml del webserive, salvo tale pagina in un file WebServiceAuth.wsdl in c:\temp ad esempio. In visual studio per fargli prendere il webservice do' com indirizzo file://c:/temp/WebServiceAuth.wsdl
solo a questo punto il buon visual studio mi riconosce il webservice.

Al di là di visual studio credo che il problema si Internet explorer che non mi risolve correttamente http://localhost:53553/

Il mio file hosts sotto C:\Windows\System32\drivers\etc è il seguente:
127.0.0.1 localhost2
127.0.0.1 localhost
::1 localhost

qualcuno ipotizza soluzioni a questo problema?
grazie in anticipo

Andrea


rossimarko Profilo | Guru

Ciao,

>In pratica ho un webservice locale che gira su http://localhost:53553/ ad esempio, però se scrivo questo indirizzo in internet explorer o altro >browser non mi trova nessuna pagina.
Se richiami direttamente l'indirizzo http://localhost:53553/WebService.asmx trova il webservice? Ti ho riportato il numero di porta che hai messo nell'esempio, ma potrebbe cambiare visto che di solito è casuale in base alla prima esecuzione.

Hai provato ad usare IIS invece che l'ASP.Net Development Server (ovvero il web server incluso in visual studio) per vedere se non sia un problema del web server che stai usando?


-----------------------------------------
Rossi Marco
http://blogs.dotnethell.it/rossimarko

senzavento Profilo | Newbie

Ciao, grazie della risposta.

Non funziona.

Tra l'altro neanche se faccio un sito con visual studio e provo a dirgli di visualizzarlo nel browser non mi trova la pagina.

Di webservices ne sto utilizzando 4, ed ho sempre lo stesso comportamento, quando cerco di accedervi con internet explorer e vederli da visual studio.

Non saprei dove sbattere la testa!

Grazie

rossimarko Profilo | Guru

Una volta messo su IIS riesci ad accederci da un'altro computer?

Hai dei firewall installati?
-----------------------------------------
Rossi Marco
http://blogs.dotnethell.it/rossimarko

senzavento Profilo | Newbie

Cosa intendi.. installare il webservice sull'iis locale, e provare ad accedere da un altro pc?

Gli stessi web services li ho installati su un server virtuale in internet e non ho problemi ad accedervi. Il problema è nella mia macchina e non dipende dai webservice.

Ho anche provato a disinstallare e reinstallare IIS dai componenti aggiuntivi di windows ma non cambia nulla.

rossimarko Profilo | Guru

Mi spiego meglio. Quando crei un webservice o un qualsiasi progetto web da visual studio hai due modi per testarlo:
- usare l'asp.net development server, ovvero il web server incluso in visual studio (è quello che compare nella tray e usa delle porte diverse dalla 80, come ad esempio la 53553 --> http://localhost:53553/)
- usare IIS

Se usi IIS devi ovviamente creare la virtual directory all'interno di IIS e devi dire a visual studio di non lanciare più l'ASP.Net Development server ma IIS (lo puoi fare nelle proprietà di progetto). Una volta fatto vedrai che se lanci l'applicazione l'indirizzo aperto sarà un qualcosa del tipo http://localhost/[NomeProgetto] (La porta non è specificata perchè di default viene considerata la porta 80)

Se sei in una rete e quindi hai la possibilità di usare un altro pc puoi fare un tentativo aprendo dal pc secondario il sito sulla macchina di sviluppo (questo vale solo per IIS). Basterà inserire nella barra degli indirizzi http://nomepc/nomevirtual. Prima di fare la prova verifica di avere inserito l'eccezione nel firewall di windows del computer su cui hai installato il sito oppure disabilita temporaneamente il firewall.

Detto questo io farei le seguenti prove:
- verificare se il webservice funziona utilizzando IIS
- verificare se il webservice funziona chiamandolo da un altro pc
-----------------------------------------
Rossi Marco
http://blogs.dotnethell.it/rossimarko
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5