asp.net - HTTP 错误 403.14 - 在 ASP.NET MVC API 本地网站上被禁止
问题描述
最近我不得不在我的工作笔记本电脑上重置窗口,因为驱动程序有问题,在启动几分钟后导致无休止的蓝屏。我使用 Windows 10,并且在自己的分区上有 Windows,所以我的所有工作都不受重置的影响。
这是相关的,因为在重置之前,我的 ASP.NET 站点可以使用 IIS 10 在本地完美运行,我可以运行我的 API 站点并使用 Postman 按预期执行 HTTP 请求、登录到站点的本地化版本等。所有没有问题。重置之后,以及随后重新安装重置之前存在的所有程序,API 站点不再按预期工作。现在我在主页上收到一致的 403.14 Forbidden 错误,以及其他各种错误,具体取决于正在执行的操作。
我需要澄清这个站点不是目录站点,因此启用目录浏览,因为这个问题的大多数答案告诉我要做的不是我需要的解决方案。
我在 SO 和其他地方尝试了数十种解决方案,包括:
- 确保 IIS 应用程序池设置为 v4.0 而不是 v2.0
- 在 CMD 中键入:'C:\windows\Microsoft.NET\Framework64\v4.0.30319> aspnet_regiis.exe -i'。
- 确保打开/关闭“打开/关闭 Windows 功能”中的所有必需功能。
- 把这个:
<system.webServer>
<modules runAllManagedModulesForAllRequests="true"/>
</system.webServer>
在配置中。
- 尝试上述替代方案:
<system.webServer>
<modules>
<remove name="UrlRoutingModule-4.0" />
<add name="UrlRoutingModule-4.0" type="System.Web.Routing.UrlRoutingModule" preCondition="" />
</modules>
-在 git 中通过硬重置重置站点的所有存储库,然后清理并重建所有内容
- 与我的同事核对我们的设置是否相同,包括所有重要的文件和程序设置(它们是,他的本地站点按预期工作)
- 重新安装windows并安装所有程序,非常注意它们的安装顺序和顺序。
- 测试这一切都可以在我的个人电脑上运行(确实如此)
预期的结果是主页是一个空白的白色页面,并且从那里访问的每个控制器(即http://localhost/api.mysite/account/login/ , .../account/getinfo/,.. ./account/changeinfo/) 都按预期工作,接受并返回 json。唯一的错误信息如下:
403.14 尝试通过浏览器访问该站点到默认页面 ( http://localhost/api.mysite/ )
使用 Postman 发布到默认页面时出现 405 错误,如预期的那样(?)。
尝试使用 Postman 对 API 站点中的任何控制器方法进行 POST 或 GET 时出现 404 错误。(http://localhost/api.mysite/account/login等)
非常感谢任何帮助,这令人难以置信的令人沮丧!谢谢你。
解决方案
推荐阅读
- android - Firestore UI RecyclerAdapter 将数据传递给第二个 Activity
- python - 无法为 Python 安装 MySQL
- java - RESTful - 在 POST 和 PATCH API 中使用相同的资源实体?
- algorithm - 生成所有可能的 3X3 幻方的最佳方法是什么?
- java - 连接 3 个或更多表会产生重复的元组
- selenium - 使用 selenium webdriver 访问和处理 chrome 扩展弹出窗口
- python - 打印数字时遇到问题
- jenkins - 在heroku上部署后如何触发Jenkins测试?
- function - 在 Object 中搜索函数并列出其路径
- c# - 将多个字节数组图像数据合并为一个字节数组数据集,并将WriteAllBytes 输出到单个图像输出