asp.net core mvc在iis上部署
.net core mvc重新生成或发布,部署到iis,在浏览器浏览时提示
HTTP 错误 403.14 - Forbidden
Web 服务器被配置为不列出此目录的内容。
解决1:设置启用目录浏览(iis网站-功能视图-iis下的目录浏览-双击后设置启用),列出了目录,但不能通过点击对应页面进行跳转
解决2:设置起始页(将起始页放到wwwroot下,并在Startup.cs的Configure方法中添加如下代码:)
DefaultFilesOptions defaultFilesOptions = new DefaultFilesOptions();
defaultFilesOptions.DefaultFileNames.Clear();
defaultFilesOptions.DefaultFileNames.Add("静态页面路径,此处的路径是相对于wwwroot文件夹的相对路径
");
app.UseDefaultFiles(defaultFilesOptions);
app.UseStaticFiles();
然后因为是mvc项目,不打算设置起始页了,直接通过/controller/method访问,但
HTTP 错误 404.0 - Not Found
您要找的资源已被删除、已更名或暂时不可用
于是查了.net core项目在iis中的部署,又安装了一个.net core模块,安装成功如下图(模块查看:iis左侧连接点击服务器名,在右侧的功能视图双击iis下的模块)
配置的网址路径为发布下的public目录,然后访问提示
HTTP Error 500.30 - ANCM In-Process Start Failure
查询错误码,根据文末链接文章中修改了vs发布时设置,将目标运行时由“可移植”调整为“win-x64”后,运行正常了直接在默认页,此时没有按前文设置起始页
在云服务器上配置后,访问失败,提示:
HTTP Error 500.31 - Failed to load ASP.NET Core runtime
在服务器上安装了.net core运行环境后正常了。
然后服务器上可以访问,非服务器就不行了,然后查询了云服务器后台的安全组,设置没问题,还需要设置下防火墙(控制面板-Windows Defender 防火墙-高级设置-设置出入站规则)
参考:
设置默认起始页:https://www.cnblogs.com/braink-1400/p/11311753.html https://www.cnblogs.com/yuchenghao/p/11024164.html
.net core项目在iis中部署:https://www.cnblogs.com/wangjieguang/p/core-iis.html
.net core在iis中模块安装地址:https://docs.microsoft.com/zh-cn/aspnet/core/tutorials/publish-to-iis?view=aspnetcore-2.1&tabs=visual-studio
.net core部署目录结构:https://docs.microsoft.com/zh-cn/aspnet/core/host-and-deploy/directory-structure?view=aspnetcore-5.0&viewFallbackFrom=aspnetcore-2.1
安装.net core模块后报错500.30:https://blog.csdn.net/qq_25042791/article/details/103055914
服务器安装.net core运行环境:https://www.cnblogs.com/qtiger/p/13859801.html https://www.cnblogs.com/v587yy/p/12161684.html
.net core运行环境下载:https://dotnet.microsoft.com/download/dotnet-core
在iis部署后,本地可以访问,外部访问不了:https://blog.csdn.net/weixin_42059737/article/details/86477875
本地可以访问,外部访问不了:https://blog.csdn.net/weixin_42059737/article/details/86477875
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 提示词工程——AI应用必不可少的技术
· 字符编码:从基础到乱码解决
· 地球OL攻略 —— 某应届生求职总结