Domanda

Vorrei testare la mia app web in altri browser. Ho installato PC virtuale per fare proprio questo. Il server di sviluppo ASP.NET non consente connessioni remote, quindi il PC virtuale (un altro computer sulla rete) non può accedere al sito Web.

ho trovato questo Post che è stato avviato ma non c'era soluzione.

Capisco che l'uso di localhost non funzionerà. Ho sentito parlare di usare l'IP di macchine, ma come posso ottenere quell'IP corretto? Guarda il mio amministratore router di Lynksys?

Se dovessi arrivare fino a ottenere il mio IP, sono sicuro che il server Dev ASP.NET non consente connessioni remote. Come posso abilitarlo a farlo?

È stato utile?

Soluzione

Sto facendo alcune ipotesi sulla tua configurazione qui, quindi sopporta:

Se la tua macchina virtuale è XP Professional, Vista Business, Windows 7 Professional o migliore, allora dovresti essere in grado di eseguire IIS a livello locale sulla macchina di sviluppo e accedere a quel WebServer da un'altra macchina che si trova sulla stessa rete tramite il nome della macchina virtuale.

Allo stesso modo, se stai facendo sviluppo su una vera macchina e desideri utilizzare diverse macchine virtuali per accedere all'applicazione Web, dovresti assicurarti di aver installato IIS, creare un nuovo sito Web in IIS e dovresti essere per navigare al Applicazione Web tramite il nome della macchina dalle macchine virtuali.

Ad ogni modo, non cercare di utilizzare il server Web incorporato da Visual Studio, basta pubblicare il tuo sito a IIS e lavorare con esso in quel modo.

Buona fortuna e spero che questo aiuti alcuni.

Altri suggerimenti

La risposta è: No(*). Non è possibile accedere al server di sviluppo ASP.NET su una macchina da un'altra, anche se si apri la porta TCP di Windows Firewall.

Dall'articolo MSDN "Server Web in Visual Web Developer":

È specificamente creato per servire o eseguire le pagine Web ASP.NET nello scenario host locale (navigando dallo stesso computer del server Web).

In altre parole, il server di sviluppo ASP.NET servirà le pagine alle richieste del browser sul computer locale. Non servirà pagine a un altro computer. Inoltre, non servirà file che sono al di fuori dell'ambito dell'applicazione.

(*) Dovrai eseguire il tuo sito dal tuo IIS installato a livello locale ... o fare il bel hack usando un po 'di freeware descritto in questo post sul blog:

Accesso al server di sviluppo ASP.NET di Visual Studio ASP.NET

Uso Porta SPI in avanti Per accettare le connessioni del dispositivo, fai quanto segue:

Imposta "porta locale" sul numero di porta su cui si collega il dispositivo, di solito utilizzo 8080 per abitudine
Imposta "host remoto" su localhost
Imposta "porta remota" sulla porta Server Dev ASP.NET

Fare clic sul pulsante "Attiva" per iniziare ad accettare le connessioni

(Nota: assicurati di aver avviato il programma con i diritti di amministrazione)

Imposta un portforwarding utilizzando Rinetd
Deatils qui: http://blog.waynehartman.com/articles/218.aspx

Un'altra risposta se non vuoi usare IIS (o tunnel): https://stackoverflow.com/a/12008223/1552178

Usa Fiddler o Simile sul tuo host: impostare il browser sulla VM client per utilizzare il proxy, quindi utilizzare LocalHost: Dev_port come al solito sul client.

Tutte le richieste del client ottengono il proxy sulla macchina Dev che percorso a LocalHost sulla macchina Dev e il server Dev ASP.NET pensa che la richiesta sia dalla tua macchina Dev!

Sto rispondendo a questa vecchia domanda per aiutare le persone a farlo funzionare Senza IIS.

1. Primo passo

Devi scaricare Violinista.

Una volta scaricato e installato Fiddler, aprilo.

Entrare Strumenti-> Opzione Fiddler-> Scheda di connessione-> e controlla "Consenti ai computer remoti di connettersi" :

enter image description here

Riavvia il violinista.

2. Secondo passo

Dopo questo, in l'altro PC sulla rete o sulla VM, Apri Internet Explorer-> Opzioni Internet-> Scheda di connessione-> Impostazioni LAN-> Controlla "Usa un server proxy per la tua LAN" :

enter image description here

  1. L'indirizzo è l'indirizzo IP della tua macchina per dev.
  2. E metti la porta 8888

Ora, puoi accedere al server Web ASP.NET da un altro PC sulla rete (forse hai, più configurazione da fare, come firewall, porta senza restrizioni, ecc., Ma questo è un buon inizio)!

Per accedervi -> http://localhost.:54814

  • Non dimenticare il punto aggiuntivo dopo "Localhost"! (Sovrascrivi il locale locale)
  • La porta, "54814" nel mio caso, è la porta del server Web ASP.NET.

NOTA :

  • Per verificare se il proxy funziona, puoi provare questo: http://localhost.:8888
  • Forse ho dimenticato di sottolineare alcune configurazioni, ma dipende sempre dall'infrastruttura di rete.

Soluzione di lavoro per Linux

Questo dovrebbe funzionare se stai eseguendo un server Dev ASP.NET su Windows in una VM o su un altro host e si desidera accederlo da Linux

Sulla macchina Windows

Per qualche motivo non è possibile connettersi direttamente alla porta Server Dev ASP.NET, è necessario prima proxy a livello locale:

Uso Porta SPI in avanti Per accettare le connessioni del dispositivo, fai quanto segue:

Imposta "Porta locale" sul numero di porta su cui si connette il dispositivo, come 8089 set "host remoto" su localhost
Imposta "porta remota" sulla porta Server Dev ASP.NET

Fare clic sul pulsante "Attiva" per iniziare ad accettare le connessioni

(Nota: assicurati di aver avviato il programma con i diritti di amministrazione)

Sulla macchina Linux

Porta localmente LocalHost 8089 a Windows IP (Sostituisci GUEST_IP_HERE con l'IP corretto):

iptables -t nat -A OUTPUT -m addrtype --src-type LOCAL --dst-type LOCAL -p tcp --dport 8089 -j DNAT --to-destination GUEST_IP_HERE:8089
iptables -t nat -A POSTROUTING -m addrtype --src-type LOCAL --dst-type UNICAST -j MASQUERADE

Ciò è necessario perché il server Dev cerca specificamente LocalHost nella richiesta e non risponderà http://GUEST_IP_HERE:8089 dall'host

Apri un prompt e un tipo di comandi; "ipconfig" Questo ti darà l'indirizzo IP delle tue macchine.

Se si disabilita il firewall (almeno per la porta dev ASP.NET) dovresti essere in grado di digitare nel browser del PC virtuale http://192.168.1.3:3243/default.aspx

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top