我可以访问Intranet中的ASP.NET开发服务器吗?

我正在testing一个ASP.NEt网站。 当我执行它时,它启动ASP.NET开发服务器并打开一个页面。

现在我想在我的Intranet上进行testing。

  1. 我可以使用这台服务器,或者我需要在这台机器上configurationIIS吗?

  2. 我需要configuration一些东西才能起作用吗?

我已经改变了本地主机到正确的IP,我打开了防火墙。

谢谢

是的你可以! 而且你不需要IIS

只需使用简单的Java TCP隧道。 下载这个Java应用程序,只是隧道的stream量回来。 http://jcbserver.uwaterloo.ca/cs436/software/tgui/tcpTunnelGUI.shtml

在命令提示符下,你可以像这样运行java应用程序…让我们假设你需要在80端口上进行外部访问,而你的标准debugging环境在1088端口上运行。

java -jar tunnel.jar 80 localhost 1088 

(这里也回答: 访问VM外部的asp.net开发服务器 )

不,你不能。 它的设置,所以它只能在本地主机,我找不到任何解决方法,使其工作。

但是,这是我一直在做的 – 我在IIS中的特定端口上创build网站,并打开该端口,以便在networking上可见。 我指出,IIS网站到我的网站的根文件夹(其中与web.config中的一个)。 然后,我继续在开发时使用本地计算机上的ASP.NET开发服务器 – IIS和ASP.NET开发服务器都可以同时访问这些文件(除非您正在做一些古怪的事情)。

让我知道如果您的机器上运行IIS有一个挑战,我会更新我的答案。

我意识到这不是直接回答你的问题,但使用ASP开发服务器进行debugging的替代方法是附加到IIS进程: 如何将debugging器附加到IIS而不是ASP.NET开发服务器?

不,愚蠢地(恕我直言)没有办法得到默认的ASP.net开发服务器提供页面到本地主机以外的IP。 我所做的就是使用UltiDev Cassini ,这个设置非常快,基本上是由UltiDev编译的ASP.net开发服务器的一个版本,它可以将页面提供给任何IP地址。

只是为了那些不想/无法设置IIS出于任何原因…

在你的主机上使用fiddler或类似的东西 – 在客户端虚拟机上设置你的浏览器来使用代理,然后像往常一样在客户端上使用localhost:dev_port。

来自客户端的所有请求都转到您的开发机器上的代理,该代理会在开发机器上路由到本地主机,并且ASP.net开发服务器认为请求来自您的开发机器!

你可以重新编译Cassini来让它工作 – 在这里有一个相当容易的删除localhost的检查。 或者,我很确定Ultidev的卡西尼没有这个限制。 这两个都比IIS更容易设置。

但是,是的,内置的WebDev.WebServer不起作用….嗯,除非你在开发箱上运行类似AnalogX的代理服务器 ,并将其指向WebDev端口。 这应该工作(虽然我没有尝试过,它应该需要<2分钟设置)。

您可以使用Cassini从外部公开您的Web应用程序。 你只需要代理连接。 我写了一个简单的程序来做到这一点,你可以在另一个VS实例运行。 只需更改端口以匹配卡西尼正在使用的端口。

https://gist.github.com/945649

您可以使用SOAP Toolkit 3.0进行端口redirect

安装完成后,进入我的程序> Microsoft Soap Toolkit 3> Trace Utility

一旦跟踪实用程序打开,转到文件>新build>格式化的跟踪

在对话框中,在“转发到目标端口”字段中插入ASP .NET Development Server端口。

这只是testing目的的解决方法

我相信内置的ASP.NET服务器只能在本地主机上运行。 你将不得不使用IIS。

以debugging模式编译所有网站,然后创build网站并在IIS中发布(确保可以从其他机器查看)。 然后使用您的网站的AppPool将该VS2010debugging器附加到该进程(当IIS> v5时,该过程被称为w3wp.exe,当IIS <5时该过程被称为aspnet_wp.exe)。

如果你做了一些改变,只要更换网站物理path上的包裹内容,然后你就可以再次出发了。