.NetCore swagger发布到iis时访问api出现404的解决方案

2021-01-20 16:13

阅读:409

标签:var   app   log   nts   evel   ldap   file   enabled   location   

介绍
使用netcore作为纯后端提供api已经变得越来越频繁,swagger也成为很多人的选择。通常会在代码中限制ASPNETCORE_ENVIRONMENT为Production时关闭swagger。但是往往我们需要将api发布到本地iis调试或供他人使用时,swagger将会被禁止。发布后项目往往默认为Production环境,将其修改为Development即可解决。

解决方法
打开发布到iis的文件夹下的web.config文件,添加以下代码:

1 environmentVariables>
2 environmentVariable name="ASPNETCORE_ENVIRONMENT" value="Development" />
3 environmentVariables>

修改后的web.config结构大致如下:

 1 xml version="1.0" encoding="utf-8"?>
 2 configuration>
 3 location path="." inheritInChildApplications="false">
 4 system.webServer>
 5 handlers>
 6 add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModuleV2" resourceType="Unspecified" />
 7 handlers>
 8 aspNetCore processPath="dotnet" arguments="*.dll" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" hostingModel="InProcess">
 9 environmentVariables>
10 environmentVariable name="ASPNETCORE_ENVIRONMENT" value="Development" />
11 environmentVariables>
12 aspNetCore>
13 system.webServer>
14 location>
15 configuration>
16 

 

更多环境及发布详细介绍可参考netcore环境设置。

.NetCore swagger发布到iis时访问api出现404的解决方案

标签:var   app   log   nts   evel   ldap   file   enabled   location   

原文地址:https://www.cnblogs.com/heyy1028/p/12123756.html


评论


亲,登录后才可以留言!