Asp.net mvc 从命令行在IISExpress中运行ASP.NET
我在IISExpress下从命令行运行ASP.NET5时遇到问题 我当前的命令行设置(感谢)看起来是这样的 iisexpress.exe/config:“[project_dir].vs\config\applicationhost.config”/site:“WebUI”/apppool:“Clr4IntegratedAppPool” 请注意,在VS2015中运行项目效果良好 当我运行上面的命令时,IISExpress启动,它甚至找到了应该运行的正确端口。主要问题是每个请求都返回502.3 查看Asp.net mvc 从命令行在IISExpress中运行ASP.NET,asp.net-mvc,asp.net-mvc-5,asp.net-core,iis-express,Asp.net Mvc,Asp.net Mvc 5,Asp.net Core,Iis Express,我在IISExpress下从命令行运行ASP.NET5时遇到问题 我当前的命令行设置(感谢)看起来是这样的 iisexpress.exe/config:“[project_dir].vs\config\applicationhost.config”/site:“WebUI”/apppool:“Clr4IntegratedAppPool” 请注意,在VS2015中运行项目效果良好 当我运行上面的命令时,IISExpress启动,它甚至找到了应该运行的正确端口。主要问题是每个请求都返回502.3 查
IISExpress\TraceLogFiles
的内容,我看到了这个错误
ModuleName:httpPlatformHandler
通知:执行\u请求\u处理程序
HttpStatus:502
HttpReason:坏网关
HttpSubStatus:3
错误代码:服务器当前已禁用。(0x8007053d)
这是什么原因造成的?为什么我不能让它运行 applicationhost.config可能指向项目的根目录,在该目录中,项目的默认web.config文件有一行如下所示:
<aspNetCore processPath="%LAUNCHER_PATH%"
arguments="%LAUNCHER_ARGS%"
stdoutLogEnabled="false"
stdoutLogFile=".\logs\stdout"
forwardWindowsAuthToken="false"/>
Visual Studio(以及dotnet publish
命令)将在F5启动期间用ASP.NET核心应用程序的实际路径替换启动器变量;我不确定这个新的web.config文件存储在哪里
也就是说,通过以下步骤,我能够在ASP.NET核心应用程序中使用IIS Express的命令行调用
dotnet发布
正如前面的回答所指出的,VisualStudio在启动iisexpress时设置%LAUNCHER_PATH%和%LAUNCHER_ARGS%环境变量。如果设置了这些参数,则不必运行
dotnet publish
,但是,这些参数的内容在不同版本的Visual Studio中略有变化。幸运的是,您可以使用Process Explorer查看其中的内容。引用一篇好的博客文章:
当我遇到这个问题时(我不得不使用iisexpress,而不是使用
dotnet run
,因为我运行的是一个带有遗留组件的应用程序),我将LAUNCHER\u ARGS=“-p C:\$XXX\$MY\u PROGRAM.exe”和LAUNCHER\u PATH:设置为上面的值,启动这个应用程序对我来说很有效。我建议使用Process Explorer查找Visual Studio在其中放置的内容,并使用它来编写启动命令。是否安装了httpPlatformHandler 1.2?如果你这样做了-你能显示你的web.config文件吗?这能回答你的问题吗?
So in fact Visual Studio silently adds the two environment variables when launching IIS Express, so that ASP.NET Core related bits can be injected.
LAUNCHER_ARGS: -debug -p “C:\Program Files\dotnet\dotnet.exe” -a “exec \”C:\Users\lextm\documents\visual studio 2017\Projects\WebApplication2\WebApplication2\bin\Debug\netcoreapp1.0\WebApplication2.dll\”” -pidFile “C:\Users\lextm\AppData\Local\Temp\2\tmpFD6D.tmp” -wd “C:\Users\lextm\documents\visual studio 2017\Projects\WebApplication2\WebApplication2”
LAUNCHER_PATH: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\Extensions\Microsoft\Web Tools\ProjectSystem\VSIISExeLauncher.exe```