2011-08-15 87 views
0

我注意到Visual Studio喜欢随时更改用于我的应用程序的端口,我想知道为什么。在读取了一些堆栈溢出之后,我找到了解决方案来防止这种情况(可以分配一个静态端口)。但是,我不觉得它是一个问题(仅仅是一个好奇心),并不需要分配一个静态端口。我只想知道它为什么这样做。Visual Studio 2010 Web开发端口

在调试我的应用程序时,VS将在一个端口上运行。在另一次运行5或10分钟后,它将运行在完全不同的端口上。据我所知,我的机器上没有其他进程正在使用这些相同的端口,那么为什么更改?一旦找到可用的端口,为什么它不会继续使用它?

回答

2

这是设计。您可以每次都有随机端口,或者您可以为每个项目分配一个固定端口。我猜想让事情变得简单(而不是确定先前使用的端口是否被采用,然后基于此,请使用旧的或新的端口)!

+0

的事情是,随机的,每次它不是。在改变之前它会多次使用同一个。 – yoozer8

+1

我称之为VS失忆症效应!当发生这种情况时,导航到'[MyDocuments文件夹] \ IISExpress \ config \ applicationhost.config'并找到项目名称。删除任何现有的条目并重新启动VS.它将再次使用相同的端口。此外,您可能希望仅通过端口号进行搜索,以确保它不会以某种方式分配给任何其他条目。 – Mrchief

1

正如Mrchief所说,这是通过设计。您可以选择通过创建虚拟目录并在项目属性的Web选项卡上进行适当的选择来使用IIS。

那么你的URL(也可以调试)看起来像:

http://localhost/myproject

80端口将成为默认:)