Windows Server
Загрузка архива
Открыть веб-браузер где установлен Пассворк и получить PHP.
Обратить внимание, данный архив включает в себя версию PHPx64.
Разархивировать содержимое в — C:\Program Files\ с заменой файлов:

Изменение PHP версии в IIS
Перейти в — Диспетчер Серверов → Средства → Диспетчер служб IIS:

Раскрыть веб-сайт Пассворка и перейти в — Администратор PHP:

Зарегистрировать новую версию PHP и указать путь C:\Program Files\php8.3\php-cgi.exe:

Перейти в — Включить или выключить расширения. Активировать следующие расширения как на скриншоте:

Открыть PowerShell от имени «Администратора»:
С помощью контекстного меню Пуск
- Нажать правой кнопкой мыши на значке Пуск в левом нижнем углу экрана.
- Выбрать «Windows PowerShell (администратор)» из контекстного меню.
С помощью меню Пуск
- Нажать левой кнопкой мыши на значок Пуск в левом нижнем углу экрана.
- Прописать
powershell - Открыть PowerShell от имени «Администратора» комбинацией —
Ctrl + Shift + Enter
Обновить список HTTP-методов, разрешённых для PHP-обработчика.
Имя обработчика в web.config задаёт PHP Manager при регистрации PHP в IIS. Оно может не совпадать с текущей версией PHP из php -v (например, в файле останется php-8.3.28, а PHP уже 8.3.36). Менять имя обработчика не нужно — важно, что scriptProcessor указывает на актуальный php-cgi.exe.
- PowerShell
# Изменить путь, если Пассворк установлен не в стандартную директорию
$webConfigPath = "$env:SystemDrive\inetpub\wwwroot\passwork\public\web.config"
if (-not (Test-Path $webConfigPath)) {
Write-Host "web.config не найден: $webConfigPath" -ForegroundColor Red
return
}
[xml]$webConfig = Get-Content $webConfigPath
$handler = $webConfig.SelectSingleNode(
"//system.webServer/handlers/add[starts-with(@name,'php-') or contains(@scriptProcessor,'php-cgi')]"
)
if ($handler) {
Write-Host "Найден PHP-обработчик: name=$($handler.name)" -ForegroundColor Green
$handler.verb = "GET,HEAD,POST,PUT,DELETE,OPTIONS,PATCH"
$webConfig.Save($webConfigPath)
} else {
Write-Host "PHP-обработчик в web.config не обнаружен" -ForegroundColor Red
}
Перезапустить веб-сайт Пассворка:
- PowerShell
Import-Module WebAdministration
Stop-WebSite -Name "Passwork Web Site"
Start-WebSite -Name "Passwork Web Site"