HangerFire 在删除失败作业时在生产服务器中显示 404 错误

HangerFire shows 404 error in Production server while deleting faile jobs

当我尝试删除生产服务器中失败的作业时出现 404 错误,但我可以在本地 PC 中删除它们。

URL https://mywebsite.com/hangfire/jobs/failed/delete HTTP 错误 404

URL https://localhost:59141/hangfire/jobs/failed/delete HTTP 200

任何人都可以告诉我为什么只在生产服务器上发生这种情况。 这个 url 后面只有一台服务器.. 在此先感谢...

我实际面临的问题是 - 我在 IIS 的共享点网站内部署了 hangfire 应用程序。

单击按钮时删除作业的路径类似于此

http://SharePointWebsite/MyAapplicationWebSite/hangfire/jobs/failed/delete

这是 hangfire 代码在内部生成的路径(我在我的项目中添加了 hangfire 程序集引用)。由于某些配置问题,我的 Share Point 应用程序不接受这条巨大的路径。所以我改变了路径 http://SharePointWebsite/MyAapplicationWebSite/hangfire/jobs/faileddelete

(我在路径中删除了一个“/”)对我有用。

如何更改自动生成的路径:

从 GitHub 中获取 HangFire 代码,现在是开源的

在仪表板页面中,您会找到 FailedJobsPage.cshtml。用您想要的短 url 更新此页面内容。

但此 cshtml 将不会呈现,直到您 运行 自定义工具 - "razor generator tool"(VS 扩展)用于生成 cs 文件的此 cshtml 页面 您可以看到这些 cs 文件已经存在于 GitHub 代码中(展开 cshtml 页面您将找到 cs 文件)

完成上述步骤后,请确保在 DashboardRoutes.cs 文件中也配置相同的路径。

===========================

"ExtensionlessUrlHandler-Integrated-4.0" 在 "handlers" 部分 SharePoint 应用程序 Web 配置导致实际问题