我正在测试ASP.NEt网站。当我执行它时,它启动ASP.NET Development Server并打开一个页面。
现在我想在内联网上测试它。
我可以使用此服务器,还是需要在此计算机中配置IIS?
我是否需要配置一些内容才能使用?
我已将localhost更改为正确的IP,并打开了防火墙。
由于
答案 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)
但是,这就是我一直在做的事情 - 我在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正在使用的端口。
答案 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。)
如果您进行了一些更改,只需更换网站物理路径上的包内容,然后再去。