我想在从Visual Studio调试时更改运行我的网站的端口号。我正在使用Visual Studio 2012,我正在使用ASP.NET MVC 4来完成我想要更改端口的项目。随机端口或固定任何人只会想改变端口。
答案 0 :(得分:106)
为使用IIS Express的Web应用程序项目指定端口
在“解决方案资源管理器”中,右键单击应用程序的名称,然后选择“属性”。 单击Web选项卡。
在“服务器”部分的“使用本地IIS Web服务器”下的“项目URL”框中,更改端口号。
在“项目URL”框的右侧,单击“创建虚拟目录”,然后单击“确定”。
在“文件”菜单中,单击“保存所选项目”。
- 醇>
要验证更改,请按CTRL + F5以运行项目。 新端口号出现在浏览器的地址栏中。
来自How to: Specify a Port for the Development Server(archive.org备份here)。
答案 1 :(得分:58)
这是一种更适用于 网站 项目和 Web应用程序 项目的手动方法。 (您无法在Visual Studio for Website项目中更改项目URL。)
为使用IIS Express的任何Web项目指定端口:
在解决方案资源管理器中,右键单击项目名称,然后单击删除或删除;不用担心,这会从解决方案中删除项目,但不会删除磁盘上的相应文件。
导航到IIS Express ApplicationHost.config 文件。默认情况下,此文件位于:
%userprofile%\Documents\IISExpress\config
在文本编辑器中打开 ApplicationHost.config 文件。在<sites>
部分中,搜索您网站的名称。在您网站的<bindings>
部分,您会看到如下元素:
<binding protocol="http" bindingInformation="*:56422:localhost" />
将端口号(上例中的56422)更改为您想要的任何内容。 e.g:
<binding protocol="http" bindingInformation="*:44444:localhost" />
(奖励:您甚至可以绑定到其他主机名并执行以下操作:
<binding protocol="http" bindingInformation="*:80:mysite.dev" />
然后将mysite.dev
映射到127.0.0.1
文件中的hosts
,然后从“http://mysite.dev”打开您的网站;但是这超出了这个答案的范围,所以我不再详细介绍了)
如果您有网站项目:
在解决方案资源管理器中,右键单击解决方案,选择“添加”,然后选择现有网站... 。在“添加现有网站”对话框中,确保选中“本地IIS”选项卡。在“IIS Express站点”下,选择已更改端口号的站点,然后单击“确定”。
如果您有 Web应用程序项目:
在解决方案资源管理器中,右键单击解决方案,选择“添加”,然后选择现有项目... ,浏览并选择Web应用程序的项目文件。然后:
在“解决方案资源管理器”中,右键单击项目名称,然后选择“属性”。单击Web选项卡。
在“服务器”部分的“使用本地IIS Web服务器”下的“项目URL”框中,输入一个URL,以匹配您之前在 ApplicationHost.config 文件中输入的主机名和端口。
在“项目URL”框的右侧,单击“创建虚拟目录”,然后单击“确定”。
在“文件”菜单中,单击“保存所选项目”。
现在,您可以从新的主机名/端口访问您的网站。
答案 2 :(得分:12)
右键单击您的MVC项目。转到“属性”。转到Web选项卡
更改项目URL中的端口号。例。 本地主机:的 50645 强>
将粗体数字50645更改为其他任何内容都将更改网站运行的端口
按创建虚拟目录按钮完成此过程。
另请参阅:http://msdn.microsoft.com/en-us/library/ms178109.ASPX
图像显示了MVC项目的Web选项卡
答案 3 :(得分:10)
对于那些在 .Net核心中寻找此配置的人来说,这位于lauchSettings.json
。只需编辑属性"applicationUrl"
中的端口即可。
该文件应如下所示:
{
"iisSettings": {
"windowsAuthentication": false,
"anonymousAuthentication": true,
"iisExpress": {
"applicationUrl": "http://localhost:53950/", //Here
"sslPort": 0
}
},
"profiles": {
"IIS Express": {
"commandName": "IISExpress",
"launchBrowser": true,
"launchUrl": "index.html",
"environmentVariables": {
"Hosting:Environment": "Development"
},
}
}
}
或者您可以通过双击项目的“属性”来使用GUI。
注意:我必须重新打开VS才能使其正常工作。
答案 4 :(得分:2)
安装IIS的人的另一个修复:
在IIS服务器上创建路径,并在那里分配您的网站/应用程序。
转到探险家解决方案的各个部分,然后在使用视觉工作室的iisexpress之前,使用你个人自己的IIS。
答案 5 :(得分:1)
您可以先从命令行启动IIS express,并为其指定一个带/ port:port-number的端口 见other options。
答案 6 :(得分:1)
对于旧的网站项目,您需要在解决方案文件中修改端口,找到类似于下面的部分并更改“VWDPort”属性
Project("{E24C65DC-7377-472B-9ABA-BC803B73C61A}") = "My Website", "My Website\", "{871AF49A-F0D6-4B10-A80D-652E2411EEF3}"
ProjectSection(WebsiteProperties) = preProject
SccProjectName = "<Project Location In Database>"
SccAuxPath = "<Source Control Database>"
SccLocalPath = "<Local Binding Root of Project>"
SccProvider = "Mercurial Source Control Package"
TargetFrameworkMoniker = ".NETFramework,Version%3Dv4.7.2"
ProjectReferences = "{41176de9-0c21-4da1-8532-4453c9cbe289}|My.CommonLibrary.dll;{f1fda4e5-0233-458e-97b8-381bdb38a777}|My.Ajax.dll;{e756176c-9cd1-4dac-9b2d-9162b7554c70}|My.WEB.API.Domain.dll;{7A94A6C8-595B-43CF-9516-48FF4D8B8292}|My.WEB.API.Common.dll;{790654F2-7339-472C-9A79-9E36837571A0}|My.Api.dll;{25aa245b-89d9-4d0c-808d-e1817eded876}|My.WEB.API.DAL.dll;{cc43d973-6848-4842-aa13-7751e655966d}|My.WEB.API.BLL.dll;{41591398-b5a7-4207-9972-5bcd693a9552}|My.FacialRecognition.dll;"
Debug.AspNetCompiler.VirtualPath = "/My Website"
Debug.AspNetCompiler.PhysicalPath = "My Website\"
Debug.AspNetCompiler.TargetPath = "PrecompiledWeb\My Website\"
Debug.AspNetCompiler.Updateable = "true"
Debug.AspNetCompiler.ForceOverwrite = "true"
Debug.AspNetCompiler.FixedNames = "false"
Debug.AspNetCompiler.Debug = "True"
Release.AspNetCompiler.VirtualPath = "/My Website"
Release.AspNetCompiler.PhysicalPath = "My Website\"
Release.AspNetCompiler.TargetPath = "PrecompiledWeb\My Website\"
Release.AspNetCompiler.Updateable = "true"
Release.AspNetCompiler.ForceOverwrite = "true"
Release.AspNetCompiler.FixedNames = "false"
Release.AspNetCompiler.Debug = "False"
VWDPort = "3883"
SlnRelativePath = "My Website\"
EndProjectSection
ProjectSection(ProjectDependencies) = postProject
{C3A75E14-1354-47CA-8FD6-0CADB80F1652} = {C3A75E14-1354-47CA-8FD6-0CADB80F1652}
EndProjectSection
EndProject
答案 7 :(得分:0)
如果我们谈论的是WebSite,而不是Web应用程序,那么我的问题是实际的.sln文件夹位于网站之外的其他位置,并且我没有注意到。寻找.sln路径,然后寻找那里的.vs(隐藏)文件夹。
答案 8 :(得分:0)
我在VS2017上的WCF项目上遇到了同样的问题。当我调试时,它会出现无法获取元数据的错误,但事实证明该端口已被其他进程使用。我从这里有了一些想法,最后弄清楚了港口的位置。有2个地方: 1. C:...到您的解决方案文件夹.... vs \ config \ applicationhost.config。在内部,您可以找到要调试的站点。在下,删除有端口问题。 2. C:...到您的项目文件夹... \,您将看到一个包含ProjectName.csproj.user的文件。删除该文件。
因此,关闭解决方案,删除上面提到的和用户文件,然后重新打开解决方案,VS将为该站点找到另一个合适的端口。
答案 9 :(得分:0)
如果仅由于端口已在使用中而要更改端口。请执行以下步骤。
在Visual Studio中
<DevelopmentServerPort>62140</DevelopmentServerPort> <DevelopmentServerVPath></DevelopmentServerVPath> <IISUrl>http://localhost:62116/</IISUrl>
可以通过随机选择另一个端口来工作。
有关更多信息。请click
答案 10 :(得分:0)
我正在使用VS 2019。
如果您的解决方案具有多个项目/类库等,则单击“解决方案资源管理器”属性时,您可能看不到“ Web”选项卡。
单击MVC项目,然后检查属性,将显示Web选项卡,您可以在其中更改端口。
答案 11 :(得分:-4)
使用记事本等编辑器修改 .sln文件。
用新端口替换所有端口。
答案 12 :(得分:-8)
使用默认端口在IIS中部署应用程序。尝试使用visual studio调试它。这是一个很好的做法。如果你使用visual studio,它会在大多数时间内不断更改端口号。所以最好先在IIS中部署应用程序,然后在visual studio中打开它并调试它。