Java自学者论坛

 找回密码
 立即注册

手机号码,快捷登录

恭喜Java自学者论坛(https://www.javazxz.com)已经为数万Java学习者服务超过8年了!积累会员资料超过10000G+
成为本站VIP会员,下载本站10000G+会员资源,会员资料板块,购买链接:点击进入购买VIP会员

JAVA高级面试进阶训练营视频教程

Java架构师系统进阶VIP课程

分布式高可用全栈开发微服务教程Go语言视频零基础入门到精通Java架构师3期(课件+源码)
Java开发全终端实战租房项目视频教程SpringBoot2.X入门到高级使用教程大数据培训第六期全套视频教程深度学习(CNN RNN GAN)算法原理Java亿级流量电商系统视频教程
互联网架构师视频教程年薪50万Spark2.0从入门到精通年薪50万!人工智能学习路线教程年薪50万大数据入门到精通学习路线年薪50万机器学习入门到精通教程
仿小米商城类app和小程序视频教程深度学习数据分析基础到实战最新黑马javaEE2.1就业课程从 0到JVM实战高手教程MySQL入门到精通教程
查看: 545|回复: 0

asp.net core 2.0发布到IIS流程及报错解决方案

[复制链接]
  • TA的每日心情
    奋斗
    昨天 06:33
  • 签到天数: 800 天

    [LV.10]以坛为家III

    2050

    主题

    2108

    帖子

    72万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    725426
    发表于 2021-6-25 13:17:40 | 显示全部楼层 |阅读模式

     

    我这是个新装的服务器,没有安装任何软件。

    一、发布流程

    1.安装AspNetCoreModule托管模块,同时会自动安装..net core runtime

    DotNetCore.2.0.8-WindowsHosting.exe

    https://docs.microsoft.com/en-us/aspnet/core/host-and-deploy/iis/index?view=aspnetcore-2.0

    2.重启电脑,或者使用如下命令重启IIS

    net stop was /y
    net start w3svc
    

    3.安装IIS

    4.将项目发布到IIS

    5.编辑应用程序池,把.net clr版本设置为无托管代码

    二、遇到问题

    1.浏览器运行项目,报错如下:

    HTTP Error 502.5 - Process Failure

     

    Common causes of this issue:
    • The application process failed to start
    • The application process started but then stopped
    • The application process started but failed to listen on the configured port

     

    Troubleshooting steps:
    • Check the system event log for error messages
    • Enable logging the application process' stdout messages
    • Attach a debugger to the application process and inspect

    这个错误网上有各种各样的解决方案,但是苦苦尝试了将近一天的时间没有一个适合我的。现在汇总各种解决方案,可能有适合你的:

    https://www.cnblogs.com/iiwen/p/9209391.html

    https://blog.csdn.net/CuiLanren/article/details/80777488

     

    2.查看windows错误日志信息如下:

    Application 'MACHINE/WEBROOT/APPHOST/FORM' with physical root 'C:\fabu\' failed to start process with commandline 'dotnet .\Cloud.Boss.dll', ErrorCode = '0x80004005 : c0000135.

    3.使用dotnet.exe命令dotnet d:\fabu\boss.dll运行项目,报错如下:

    ---------------------------
    dotnet.exe - 系统错误
    ---------------------------
    无法启动此程序,因为计算机中丢失 api-ms-win-crt-runtime-l1-1-0.dll。尝试重新安装该程序以解决此问题。
    ---------------------------
    确定
    ---------------------------

    3.1. 解决3的错误的方案是:

    安装Visual C++ Redistributable for Visual Studio 2015 组件
    api-ms-win-crt-runtime组件为 MFC 的运行时环境的库,是用微软的visual studio C++编译的,底层也会用到微软提供的C++库和runtime库,安装Visual C++ Redistributable for Visual Studio 2015 组件即可解决此问题
    下载地址:https://www.microsoft.com/en-us/download/details.aspx?id=48145,

    如果安装时报错如下:

    更新windows系统,或者参考文章:https://blog.csdn.net/neochan1108/article/details/78084073

     4.浏览器重新输入项目地址,问题解决。

     总结

    为什么我以前的服务器没有遇到这个问题呢,

    那是因为我以前的服务器都装了sqlserver,他会自动安装Visual C++ Redistributable for Visual Studio 2015 组件。而我这个项目用的是mysql,就没有安装此组件。

    其实微软官网文档已经说明了,只是我没有看,如下:

     

    https://docs.microsoft.com/en-us/aspnet/core/host-and-deploy/iis/index?view=aspnetcore-2.0

     

    哎...今天够累的,签到来了1...
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|手机版|小黑屋|Java自学者论坛 ( 声明:本站文章及资料整理自互联网,用于Java自学者交流学习使用,对资料版权不负任何法律责任,若有侵权请及时联系客服屏蔽删除 )

    GMT+8, 2024-11-5 04:09 , Processed in 4.097774 second(s), 29 queries .

    Powered by Discuz! X3.4

    Copyright © 2001-2021, Tencent Cloud.

    快速回复 返回顶部 返回列表