美文网首页
IIS发布.net core项目注意事项

IIS发布.net core项目注意事项

作者: AI时代岁月笔记 | 来源:发表于2021-08-20 10:47 被阅读0次

    VS2019下.net core的项目发布到IIS后、无法打开页面,显示如下:

    在IIS对应的网站点"模块“,完全点不开,报错。按网上一些说法是权限问题,一一排除,皆不行。后来发现是要安装Asp.net core Module

    注:以下是.net core3.1的截图,若是.net5则要下载相应的版本

    下载安装完成后,再进入IIS, 在对应的网站看”模块“不报错了,可以正常进入了,而且能看到AspNetCoreModuleV2了

    最终发布到IIS的asp.net core网站也可以正常打开了


    关于访问

    以Swagger的形式发布,在IIS浏览时只会出这个地址http://localhost:8031请手工加上api/index.html,即 http://localhost:8031/api/index.html就可以浏览了

    也可以用http://127.0.0.1:8031/api/index.html访问swagger 的api界面


    Windows Server2016如果安装了WebDav组件会导致.net core使用put、Delete调用时出现405的错误

    用服务器或nginx配置了处理跨域,GET、POST的跨域问题解决了,但PUT、DELETE仍然显示跨域,也要用以下办法处理

    解决办法,修改后发布的web.config文件,移除WebDav模块,请参见以下加粗字体

    <?xml version="1.0" encoding="utf-8"?>

    <configuration>

      <location path="." inheritInChildApplications="false">

        <system.webServer>

    <modules>

    <remove name="WebDAVModule" />

    </modules>

          <handlers>

    <remove name="WebDAV" />

            <add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModuleV2" resourceType="Unspecified" />

          </handlers>

          <aspNetCore processPath="dotnet" arguments=".\AllWork.Web.dll" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" hostingModel="inprocess" />

        </system.webServer>

      </location>

    </configuration>

    <!--ProjectGuid: 54F2CD82-89C4-43AD-9331-423ED81CD577-->

    发布IIS若是域用户时要带上域的前缀,否则

    相关文章

      网友评论

          本文标题:IIS发布.net core项目注意事项

          本文链接:https://www.haomeiwen.com/subject/srtephtx.html