c# - HangerFire 在删除失败作业时在生产服务器中显示 404 错误
问题描述
当我尝试删除生产服务器中失败的作业时,我收到 404 错误,但我可以在本地 PC 中删除它们。
URL https://mywebsite.com/hangfire/jobs/failed/delete HTTP ERROR 404
URL https://localhost:59141/hangfire/jobs/failed/delete HTTP 200
谁能让我知道为什么这只发生在生产服务器上。这个网址后面只有一个服务器。在此先感谢...</p>
解决方案
我实际面临的问题是 - 我在 IIS 的 sharepoint 网站内部署了 hangfire 应用程序。
删除作业的路径在按钮单击时是这样的
http://SharePointWebsite/MyAapplicationWebSite/hangfire/jobs/failed/delete
这是hangfire代码在内部生成的路径(我将hangfire程序集引用添加到我的项目中)。由于某些配置问题,我的 Share Point 应用程序不接受这条巨大的路径。所以我将路径更改为 http://SharePointWebsite/MyAapplicationWebSite/hangfire/jobs/faileddelete
(我在路径中删除了一个“/”)对我有用。
如何更改自动生成的路径:
从现在开源的 GitHub 获取 HangFire 代码
在仪表板页面中,您将找到 FailedJobsPage.cshtml。使用您想要的短网址更新此页面内容。
但是在您运行自定义工具之前不会呈现此 cshtml - 此 cshtml 页面生成 cs 文件的“剃须刀生成器工具”(VS 扩展)您可以看到这些 cs 文件已经存在于 GitHub 代码中(展开 cshtml 页面,您将找到cs文件)
完成上述步骤后,请确保在 DashboardRoutes.cs 文件中也配置了相同的路径。
==========================
SharePoint 应用程序 Web 配置的“处理程序”部分中的“ExtensionlessUrlHandler-Integrated-4.0”导致实际问题
推荐阅读
- python - Pandas DataFrame 中的 Neuraxle 选择列
- postgresql - 在 Postgresql 中解析 jsonb 数据返回 Null
- javascript - cy.fit() 不能立即工作,它需要超时来适应图形。细胞景观js
- flutter - 单击时重定向到其他页面的 Flutter 按钮网格
- virtual-machine - 如何获取 ESXi 主机上每个 VM 的 CPU 使用率
- android - 是否有新功能代替 getSharedPreferences?
- node.js - nodejs npm install sqlite3 等数据库打包报错
- excel - 根据标题名称选择范围
- java - org.bouncycastle.tls.crypto.TlsCertificate getSubject() 和其他 getter
- php - 如何根据完全匹配或部分匹配从数组中输出项目?