• ASP .NET CORE MVC 部署Windows 系统上 IIS具体步骤---.Net Core 部署到 IIS位系统中的步骤


     一、IIS 配置

    启用 Web 服务器 (IIS) 角色并建立角色服务。

    1Windows Ddesktop 桌面操作系统win7及更高版本)

    导航到控制面板” > “程序” > “程序和功能”> “启用或关闭 Windows 功能 打开“Internet Information Services”组和“Web 管理工具 选中“IIS 管理控制台, 选中万维网服务框。 接受万维网服务的默认功能,或自定义 IIS 功能。如下图1

    1

    2Windows Server 操作系统(本系统是 2012 R2 Standard

    对于服务器操作系统,通过管理菜单或服务器管理器中的链接使用添加角色和功能向导。 服务器角色步骤中,选中“Web 服务器(IIS)框。

    如下图2

    2

    继续执行确认步骤,安装 Web 服务器角色和服务。 安装 Web 服务器 (IIS) 角色后无需重启服务器/IIS

    二、安装 .NET Core Windows Server 托管捆绑包

    在托管系统上安装 .NET Core Windows Server 托管捆绑包 捆绑包可安装 .NET Core 运行时、.NET Core 库和 ASP.NET Core 模块。 该模块创建 IIS Kestrel 服务器之间的反向代理。 如果系统没有 Internet 连接,请先获取并安装 Microsoft Visual C++ 2015 Redistributable,再安装 .NET Core Windows Server 托管捆绑包。

    安装完成以后需要重启系统,或在命令提示符处依次执行 net stop was /y net start w3svc重启服务,了解系统路径的更改。

    三、 Visual Studio内使用Web 发布系统

    本系统发布使用的是vs2017 企业版本,发布系统MmPS,发布成文件系统

    1、vs2017 中选中项目MmPS,右键,点击 发布 选项

     

    2、 发布 按钮下面 选择 创建新配置文件

     

    3、点击 发布,即可完成发布系统MmPS,发布的项目在MmPS项目的binReleasePublishOutput 下的MmPSPublish

    四、web.config的配置

    1web.config 文件

    web.config 文件的主要用途是配置 ASP.NET Core 模块。 它可以提供其他 IIS 配置设置。 web.config 的创建、转换和发布 由 .NET Core Web SDK (Microsoft.NET.Sdk.Web) 处理。 SDK 设置在项目文件 <Project Sdk="Microsoft.NET.Sdk.Web"> 的顶部。 要防止 SDK 转换 web.config 文件,请将 <IsTransformWebConfigDisabled> 属性添加到项目文件,并将其设置为 true

    XML

    <PropertyGroup>  <IsTransformWebConfigDisabled>true</IsTransformWebConfigDisabled>

    </PropertyGroup>

    如果项目中有 web.config 文件,则会使用正确 processPath 和参数转换该文件,以便配置 ASP.NET Core 模块,并将该文件移动到已发布的输出。 转换不会修改文件中的 IIS 配置设置。

    2web.config 位置

    .NET Core 应用通过 IIS Kestrel 服务器之间的反向代理托管。 为了创建反向代理,web.config 文件必须存在于已部署应用的内容根路径(通常为应用基路径)中,该路径是向 IIS 提供的网站物理路径。 若要使用 Web部署发布多个应用,应用的根路径中需要包含web.config 文件。敏感文件存在于应用的物理路径中,包括子文件夹,如 <assembly_name>.runtimeconfig.json<assembly_name>.xmlXML 文档注释)和 <assembly_name>.deps.json。 存在 web.config 文件并使用该文件配置站点时,IIS 会阻止提供这些敏感文件。 因此,切勿意外重命名 web.config 文件或将其从部署中删除,这一点非常重要。

    3、web.config 内容的配置

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

    <configuration>

      <system.webServer>

        <handlers>

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

        </handlers>

        <aspNetCore processPath="dotnet" arguments=".MmPS.dll" stdoutLogEnabled="false" stdoutLogFile=".logsstdout" />

        <modules runAllManagedModulesForAllRequests="true" />

        <directoryBrowse enabled="false" />

    </system.webServer>

    </configuration>

    注:stdoutLogEnabled 是记录日志的,一本设置为true,方便查错。

    五、IIS上部署创建 IIS 网站

    1、在目标 IIS 系统上,创建一个文件夹,将应用的已发布文件夹和文件包含在其中,如MmPS项目的binReleasePublishOutput 下的MmPSPublish

    2、在文件夹中创建一个“日志”文件,用于在启用 stdout 日志记录时保存 stdout 日志。 如果部署应用时有效负载中包含了“日志”文件夹,请跳过此步骤。

    3、在 IIS 管理器中创建新网站。 提供网站名称,并将物理路径设置为应用的部署文件夹。 提供“绑定”配置并创建网站。

     

    4、“应用程序池”设置为“无托管代码”。 ASP.NET Core 在单独的进程中运行,并管理运行时。

     

    5、选中网站,右键 管理网站,浏览,既可运行网站了。

     

    六、由于IIS会随着开机启动而自动启动网站服务,因此无需配置supe开机启动守护进程了。

    7、测试

    在浏览器中输入IP地址,看看网站是否可以正常行。

    参考链接:https://docs.microsoft.com/zh-cn/aspnet/core/host-and-deploy/iis/index?tabs=aspnetcore2x

  • 相关阅读:
    What difference between sharepoint web parts and User Controls?
    Backup and Restore in SharePoint 2010
    AJAX 工作原理
    What difference between site definition and site templates?
    Webpart 通信:通过Web Part Connection 在Web Part 之间传递数据(一)
    如何设置zencart能使网店更安全?
    Win7 64bit下安装Moss2010问题总结
    SharePoint配置和自定义Content Query Web Part
    html 自动换行
    ASP.NET 包含几大对象
  • 原文地址:https://www.cnblogs.com/1175429393wljblog/p/8329023.html
Copyright © 2020-2023  润新知