3105—IIS部署

一、部署子站点

      1—父站点web.config配置

       新增并设定location段落

<configuration>
  <location path="." allowOverride="false" inheritInChildApplications="false">
    <system.webServer>
      <handlers>
        <add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModuleV2" resourceType="Unspecified" />
      </handlers>
      <aspNetCore processPath="dotnet" arguments=".\budgetBP.dll" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" hostingModel="inprocess" />
    </system.webServer>
  </location>
    <system.webServer>
        <directoryBrowse enabled="true" />
    </system.webServer>
</configuration>

        2—父站点IIS设置

       应用程序池,该父级站点使用的应用程序池的特征是:无托管代码(独立)、集成。

       3—子站web.config配置

      修改子站点的配置文件。注意:hostingModel="outofprocess"

<configuration>
  <location path="." inheritInChildApplications="false">
    <system.webServer>
      <handlers>
        <add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModuleV2" resourceType="Unspecified" />
      </handlers>
      <aspNetCore processPath=".\redis01.exe" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" hostingModel="outofprocess" />
    </system.webServer>
  </location>
</configuration>

     项目中使用的swagger的参数需要修改。

public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
    //sugar为虚拟目录的标记,与IIS虚拟目录的值呼应
     app.UseSwaggerUI(c => c.SwaggerEndpoint("/sugar/swagger/V1/swagger.json", "RESTful API V1.0.01"));

}

      4—子站IIS操作

 在IIS左侧的网站下的目标主站名称上右键点出菜单

      从操作过程看,选择“添加应用程序”和“添加虚拟目录”其实差不多。

      此处,按啰嗦的方法来:

      1—将主站的磁盘文件夹中建立新文件夹,将C#项目发布到此文件夹中。

      注意:发布方式选择为“独立”!!!

      注意2:子站点的框架版本与主站的版本要相同。???

       2—添加虚拟目录

       

       3—新增子站点的应用程序池

       默认设定即可,此处设置:无托管代码、集成。

       4—转换为应用程序 

       在子站点的名称上右键单击,选择“转换应用程序”。并指定应用程序池。

      5—备注

      5—1  C#项目

      子站点的IP及端口设定均无法生效。

      子站点的Program.cs中的CreatHostBuilder()中的webBuilder.UseIIS()要添加上。

      5—2  IIS服务器

      注意C#项目的代码包、Runtime版本。

二、netCore6 项目部署

     1—C#  部署关注点

      不要在Program.cs中使用app.Urls.Add(url)来绑定到地址。这会导致发布后IIS部署报错。

      应使用appsettings.json配置文件      

 "Kestrel": {
    "Endpoints": {
      "Https": {
        "Url": "http://*:5701"
      },
      "Http": {
        "Url": "http://*:10001"
      }
    }
  }

     发布时采用了“独立”,win-x64的参数设定。

     调整web.config的内容,默认的参数值会报错500.32

     注意:hostingModel="inprocess"为原始值

<system.webServer>   
     <handlers>
        <add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModuleV2" resourceType="Unspecified" />
      </handlers>
      <aspNetCore processPath="dotnet"  arguments=".\sqlsugar01.dll"   stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" hostingModel="outofprocess" />
</system.webServer>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值