发布asp.net core 应用 在IIS
2017-06-28 14:23
561 查看
近期由于工作原因,需要发布.net core框架下的webapi到IIS上。遭遇了一番蹂躏,特此记下,以备后面使用。
首先工作中有2个服务。一个是identityserver4的服务,负责token的发放,一个是我们的业务webApi。
当客户需要调用我们的webapi时,要先到identityserver4上去申请一个token。然后使用这个token来访问我们的webapi。
授权服务器identityserver4,是开源的。在git上可以直接获得。是基于.net core 开发的。我用的是基于.net core 1.0的。
下面它的部署就登场了。建议使用微软提供的文档。文档地址
https://docs.microsoft.com/en-us/aspnet/core/publishing/iis
文档最后面有常见问题Common errors 和解决方式 Troubleshooting。
由于服务器是server2012 ,所用的iis版本为8.5.支持 本身支持 .net 4.5
1.安装iis webserver
2 安装 .net core windows server hosting bundle
注意安装完毕之后,重启服务器,或者执行 net stop was /y followed by net start w3svc from a command prompt to pick up a change to the system PATH
否则,会报
502.3 Bad Gateway - There was a connection error while trying to route the request
虽然在文档中的troubleshooting里提到,但是根据那个解决不了问题。还是得靠重启。 或者那个命令。
3 安装.net core 运行时库,我安装的.net core sdk
在cmd里面运行 dotnet可以验证安装是否正确。
4 将vs里发布的包,放入iis里,很普通的网站发布一样。
但是应用程序池 里 .net 框架 要选择 无托管代码。
第二个 webapi的发布和一般的mvc的web发布一样。
5 如果报 500 内部错误或者webapi没有正确 记录日志,请查看日志的配置,以及iisuser对文件夹的权限。
这和其他网站发布没有区别。
首先工作中有2个服务。一个是identityserver4的服务,负责token的发放,一个是我们的业务webApi。
当客户需要调用我们的webapi时,要先到identityserver4上去申请一个token。然后使用这个token来访问我们的webapi。
授权服务器identityserver4,是开源的。在git上可以直接获得。是基于.net core 开发的。我用的是基于.net core 1.0的。
下面它的部署就登场了。建议使用微软提供的文档。文档地址
https://docs.microsoft.com/en-us/aspnet/core/publishing/iis
文档最后面有常见问题Common errors 和解决方式 Troubleshooting。
由于服务器是server2012 ,所用的iis版本为8.5.支持 本身支持 .net 4.5
1.安装iis webserver
2 安装 .net core windows server hosting bundle
注意安装完毕之后,重启服务器,或者执行 net stop was /y followed by net start w3svc from a command prompt to pick up a change to the system PATH
否则,会报
502.3 Bad Gateway - There was a connection error while trying to route the request
虽然在文档中的troubleshooting里提到,但是根据那个解决不了问题。还是得靠重启。 或者那个命令。
3 安装.net core 运行时库,我安装的.net core sdk
在cmd里面运行 dotnet可以验证安装是否正确。
4 将vs里发布的包,放入iis里,很普通的网站发布一样。
但是应用程序池 里 .net 框架 要选择 无托管代码。
第二个 webapi的发布和一般的mvc的web发布一样。
5 如果报 500 内部错误或者webapi没有正确 记录日志,请查看日志的配置,以及iisuser对文件夹的权限。
这和其他网站发布没有区别。
相关文章推荐
- 解析如何利用一个ASP.NET Core应用来发布静态文件
- asp.net应用发布到IIS无法链接到oracle数据库
- Asp.Net Core IIS发布后PUT、DELETE请求错误405.0 - Method Not Allowed 因为使用了无效方法(HTTP 谓词)
- 将 ASP.NET Core 1.0 应用作为 docker 镜像发布 (Linux版)
- ASP.NET Core应用针对静态文件请求的处理[1]: 以Web的形式发布静态文件
- 在IIS上发布并运行ASP.NET Core
- 发布ASP.NET Core网站到IIS
- 使用 Visual Studio 部署 .NET Core 应用 ——ASP.NET Core 发布的具体操作
- Asp.Net Core 发布到IIS
- 将asp.net core站点发布到IIS上遇到的问题
- ASP.NET Web Service应用发布到IIs怎么做
- 发布 ASP.NET Core 2.x 应用到 Ubuntu
- ASP.NET Web Service应用发布到IIs怎么做
- IIS发布ASP.NET应用常见错误及解决办法
- ASP.NET Core 应用发布与部署指南
- Asp.net Core 1.0.1升级到Asp.net Core 1.1.0 Preview版本发布到Windows Server2008 R2 IIS中的各种坑
- ASP.Net Core 在 IIS 中发布失败
- ASP.NET Core 2.0 MVC 发布部署--------- IIS 具体操作
- 发布 ASP.NET Core 应用
- ASP.NET MVC 应用,站点发布到本地IIS