Azure 应用服务和 IIS 上 ASP.NET Core 的常见错误参考
.NET Core 应用程序发布概述【发布独立应用】
.NET Core 应用程序发布概述【发布依赖于运行时的应用】
Download .NET Core 3.1
Download .NET 5.0
Download .NET 6.0
1、安装 DotNetCore-WindowsHosting
下载并安装 .NET Core Hosting Bundle
.NET Core 3.0 Hosting Bundle
.NET Core 3.1.14 Hosting Bundle
2、发布程序
3、配置IIS
4、应用程序池
5、Asp.NET Core api 部署在 IIS 上 405-Method Not Allowed
解决方法:在部署的目录中找到 web.config 文件,添加 runAllManagedModulesForAllRequests
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<location path="." inheritInChildApplications="false">
<system.webServer>
<handlers>
<add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModuleV2" resourceType="Unspecified" />
</handlers>
<modules runAllManagedModulesForAllRequests="false">
<remove name="WebDAVModule" />
</modules>
<aspNetCore processPath=".\MobileNurse.WebAPI.exe" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" hostingModel="inprocess" />
</system.webServer>
</location>
</configuration>
<!--ProjectGuid: a654015f-f1f8-4467-8a05-bdd22227f48f-->
---------------------------.NET Core 发布后生成多余语言文件夹---------------------------
选择.NET Core Web项目 - 右键 - 编辑项目文件 - 找到 <PropertyGroup> 节点 - 在 <PropertyGroup> 节点下添加 <SatelliteResourceLanguages>zh-Hans</SatelliteResourceLanguages>
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<TargetFramework>netcoreapp3.1</TargetFramework>
<SatelliteResourceLanguages>zh-Hans</SatelliteResourceLanguages>
</PropertyGroup>
</Project>
*
---------------------------IIS导入SSL证书,添加HTTPS协议---------------------------
1、导入证书
开始 -> 运行 -> MMC
启动控制台程序,选择菜单【文件】中的【添加/删除管理单元】-> 从列表中选择【证书】选择【添加】-> 选择【计算机帐户】 -> 下一步 -> 本地计算机 -> 完成 -> 确定
左侧列表选择【个人】 -> 证书 -> 右键【证书】 -> 所有任务 -> 导入 -> 下一步 -> 浏览 -> 选择文件 -> 下一步 -> 输入密码 -> 下一步 -> 下一步 -> 完成
2、IIS
打开IIS -> 选择站点 -> 右侧菜单选择【绑定】 -> 添加 -> 类型选择:https,SSL证书:选择新添加的证书 -> 确定
---------------------------MIME类型---------------------------
1、Startup.cs
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
app.UseStaticFiles();
app.UseStaticFiles(new StaticFileOptions()
{
ContentTypeProvider = new FileExtensionContentTypeProvider(new Dictionary<string, string>
{
{ ".apk","application/vnd.android.package-archive"},
{ ".nupkg","application/zip"}
})
});
}
--------------------------- 读取 *.json 文件中文乱码 ---------------------------
方式一
1、Visual Studio菜单栏 -> 工具 -> 自定义 -> 选择【命令】选项卡 -> 添加命令 -> 文件 -> 选中【高级保存选项】 -> 确定 -> 关闭;
2、在Visual Studio左上角可以看到【高级保存选项】。
方式二
1、用记事本打开 *.json 文件;
2、文件 -> 另存为 -> 编码:UTF-8 -> 保存。
--------------------------- HTTP Error 500.35 - ANCM Multiple In-Process Applications in same Process ---------------------------
某一个应用程序池,被多个程序使用
*
*
*
*
*