Hangfire не работает на реальном сервере
Мне нужно запланировать две задачи каждые 5 минут в моем проекте ASP.NET C#, создать zip-файл и добавить журнал. Я использовал Hangfire для планирования своих задач, и он отлично работает на локальном сервере. Когда я его внедряю, ни один из них не работает (zip или log не создается). Когда я заглянул в приборную панель Hangfire, я увидел, что создание zip находится под Scheduled
, создать журнал находится под Failed
и сообщение об ошибке System.UnauthorizedAccessException Access to the path is denied.
Я посмотрел на этот вопрос и создал app.manifest
и добавил level="requireAdministrator"
, Но это не помогло.
2 ответа
Попробуйте это, сначала напишите все методы, которые вам нужно запустить на новой странице aspx, и запустите эту страницу, в вашем случае напишите функцию log на странице и запустите созданную вами страницу (скажем, writelog.aspx
). Если это печатает журнал, то вы можете попробовать это.
В вашей функции вызова по расписанию, вызовите страницу, которую вы создали
WebClient client = new WebClient();
client.DownloadData("yourhostaddress/writelog.aspx");
Проверить AppPool
что твой HangFire
экземпляр работает. Убедитесь, что AppPool
У идентичности есть разрешение на доступ к ресурсу.