我可以在Intranet中访问ASP.NET Development服务器吗?

时间:2008-08-20 21:41:09

标签: asp.net

我正在测试ASP.NEt网站。当我执行它时,它启动ASP.NET Development Server并打开一个页面。

现在我想在内联网上测试它。

  1. 我可以使用此服务器,还是需要在此计算机中配置IIS?

  2. 我是否需要配置一些内容才能使用?

  3. 我已将localhost更改为正确的IP,并打开了防火墙。

    由于

10 个答案:

答案 0 :(得分:50)

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

只需使用简单的Java TCP隧道即可。下载此Java应用程序&只是隧道回流。 http://jcbserver.uwaterloo.ca/cs436/software/tgui/tcpTunnelGUI.shtml

在命令提示符下,您将运行这样的Java应用程序...假设您希望在端口80上进行外部访问,并且您的标准调试环境在端口1088上运行...

java -jar tunnel.jar 80 localhost 1088

(也在这里回答:Accessing asp. net development server external to VM

答案 1 :(得分:20)

不,你不能。它的设置只能在localhost上运行,我找不到任何变通方法来使它工作。

但是,这就是我一直在做的事情 - 我在IIS的特定端口上创建了网站并打开了该端口,以便在网络上可见。我将IIS网站指向我网站的根文件夹(其中包含web.config)。然后我继续在开发时在该本地机器上使用ASP.NET开发服务器 - IIS和ASP.NET开发服务器可以同时访问这些文件(除非你做了一些古怪的事情)。

让我知道在您的计算机上运行IIS是否存在挑战,我会更新我的答案。

答案 2 :(得分:6)

我意识到这不是您问题的直接答案,但使用ASP开发服务器进行调试的另一种方法是附加到IIS进程:How do I attach the debugger to IIS instead of ASP.NET Development Server?

答案 3 :(得分:5)

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

答案 4 :(得分:4)

仅适用于那些不想因为某种原因而无法设置IIS的人......

在主机上使用fiddler或类似功能 - 在客户端VM上设置浏览器以使用代理,然后像往常一样在客户端上使用localhost:dev_port。

来自客户端的所有请求都转到dev机器上的代理,该代理路由到dev机器上的localhost,ASP.net dev服务器认为请求来自你的dev机器!

答案 5 :(得分:3)

您可以重新编译Cassini以使其工作 - 在那里有一个相当容易删除localhost的检查。或者,我很确定Ultidev's Cassini没有这个限制。这两个都比IIS更容易设置。

但是,是的,内置的WebDev.WebServer无法正常工作....嗯,除非你在开发箱上运行类似AnalogX's Proxy的东西并将其指向WebDev端口。这应该工作(虽然我没有尝试过,它应该花费<2分钟来设置)。

答案 6 :(得分:3)

您可以使用Cassini在外部公开您的网络应用。您只需要代理连接。我写了一个简单的程序来执行此操作,您可以在另一个VS实例中运行。只需更改端口以匹配Cassini正在使用的端口。

https://gist.github.com/945649

答案 7 :(得分:2)

您可以使用SOAP Toolkit 3.0

进行端口重定向

安装完成后,转到我的程序&gt; Microsoft Soap Toolkit 3&gt;跟踪实用程序

打开Trace Utility后,转到文件&gt;新&gt;格式化跟踪

在对话框中,将ASP .NET Development Server端口插入Forward To Destination Port字段。

这只是用于测试目的的解决方法

答案 8 :(得分:1)

我相信内置的ASP.NET服务器只能在localhost上运行。你必须使用IIS。

答案 9 :(得分:1)

在调试模式下编译所有网站,然后创建网站并在IIS中发布(确保您可以从其他计算机上查看)。然后使用您网站的AppPool将VS2010调试器附加到进程(当IIS&gt; v5时,该过程称为w3wp.exe,当IIS <5时,该过程称为aspnet_wp.exe。)

如果您进行了一些更改,只需更换网站物理路径上的包内容,然后再去。