Настройка планировщика заданий Windows
Планировщик заданий — это встроенная в Windows утилита, позволяющая автоматически запускать программы или скрипты по расписанию или при наступлении заданных условий.
Пассворк версии 7 и выше имеет специальный скрипт, который отвечает за запуск фоновых задач:
- PowerShell
php .\bin\console tasks:run
Его можно выполнять в ручном режиме или настроить выполнение по расписанию с помощью планировщика заданий Windows.
Мы рекомендуем сперва проверить работу скрипта в ручном режиме. Для этого необходимо выполнить следующие действия в PowerShell:
- PowerShell
cd C:\inetpub\wwwroot\passwork
php .\bin\console tasks:run
Если ошибка указывает на отсутствие утилиты php.exe с помощью которой происходит запуск фоновой задачи, то директорию с PHP необходимо добавить в переменное окружения PATH.
Проверить C:\inetpub\wwwroot\passwork\files\logs\tasks\ на наличие ошибок.
Убедитесь, что пользователь, от имени которого выполняется скрипт, имеет права на запись.
Настройка Планировщика заданий
Открыть PowerShell от имени администратора:
- Нажать правой кнопкой мыши на значок Пуск в левом нижнем углу экрана;
- Выбрать Windows PowerShell (администратор) в контекстном меню.
Создать в Планировщике задачу для запуска скрипта:
- PowerShell
$action = New-ScheduledTaskAction -Execute 'powershell.exe' `
-Argument 'php .\bin\console tasks:run' `
-WorkingDirectory 'C:\inetpub\wwwroot\passwork'
$trigger = New-ScheduledTaskTrigger -Once -At (Get-Date) `
-RepetitionInterval (New-TimeSpan -Minutes 1)
$settings = New-ScheduledTaskSettingsSet -AllowStartIfOnBatteries `
-StartWhenAvailable -Hidden -Priority 5
$principal = New-ScheduledTaskPrincipal -UserId 'SYSTEM' `
-LogonType ServiceAccount -RunLevel Highest
Register-ScheduledTask -TaskName 'passwork_task' -Action $action `
-Trigger $trigger -Settings $settings -Principal $principal -Force
Проверка и исправление ошибок
Открыт ь Пассворк и авторизоваться под Администратором/Владельцем и перейти на вкладку Фоновые задачи.
При корректной конфигурации будет отображено сообщение, что планировщик настроен:

Если вы увидите сообщение, что планировщик не настроен, то ошибки выполнения расположены в C:\inetpub\wwwroot\passwork\files\logs\tasks\