Windows Server
Bezug der aktuellen Passwork-Version
- Öffnen Sie einen Webbrowser und rufen Sie das Kundenportal auf.
- Melden Sie sich am Kundenportal mit der E-Mail-Adresse des Benutzers an;
- Im Download Center — Version auswählen, um die aktuelle Passwork-Version im .zip-Format zu erhalten:

- Verschieben Sie das .zip-Archiv auf den Server mit Passwork.
Erstellen einer Sicherungskopie und einer Kopie der Konfigurationsdatei
Erstellen einer Sicherungskopie
Für die Erstellung einer MongoDB-Sicherungskopie können Sie folgende Anleitung verwenden — Beispiele zum Erstellen und Wiederherstellen von Sicherungskopien
Wenn Passwork auf einem virtuellen oder Cloud-Betriebssystem installiert ist, empfehlen wir, einen Snapshot des Betriebssystemzustands zu erstellen, um die Passwork-Funktionalität bei Fehlern schnell wiederherstellen zu können.
Erstellen einer Kopie der Konfigurationsdatei
Die wichtigsten Passwork-Parameter sind in der Konfigurationsdatei config.ini angegeben. Sie müssen eine Kopie der Datei erstellen und in einem separaten oder im Root-Verzeichnis des Benutzers speichern:
- PowerShell
Copy-Item `
-Path "C:\inetpub\wwwroot\passwork\app\config\config.ini" `
-Destination "$PWD\" -Force
Aktualisierung des Passwork-Codes und Erstellen eines Archivs der alten Version
Erstellen Sie ein Verzeichnis zur Speicherung temporärer Dateien der alten Version:
- PowerShell
mkdir C:\inetpub\copy_files
Erstellen Sie eine Kopie der Konfigurationsdatei config.ini und des Lizenzschlüssels:
- PowerShell
Copy-Item `
-Path "C:\inetpub\wwwroot\passwork\app\config\config.ini" `
-Destination "C:\inetpub\copy_files\" -Force
Copy-Item `
-Path "C:\inetpub\wwwroot\passwork\app\keys\passwork*" `
-Destination "C:\inetpub\copy_files\" -Force
Erstellen Sie ein Archiv der alten Passwork-Version in C:\inetpub\:
- PowerShell
$version = Get-Content "C:\inetpub\wwwroot\passwork\version"
Compress-Archive -Path "C:\inetpub\wwwroot\passwork\*" -DestinationPath "C:\inetpub\$version.zip"
Löschen Sie die alte Version vom physischen Code-Speicherort:
- PowerShell
Remove-Item -Path "C:\inetpub\wwwroot\passwork\*" -Recurse -Force
Entpacken Sie die neue Passwork-Version nach C:\inetpub\wwwroot\passwork\:
- PowerShell
Expand-Archive `
-Path "$PWD\Passwork-xxxxxx.zip" `
-DestinationPath "C:\inetpub\wwwroot\passwork\"
Verschieben Sie die Konfigurationsdatei und den Lizenzschlüssel in die neue Version:
- PowerShell
Move-Item `
-Path "C:\inetpub\copy_files\config.ini" `
-Destination "C:\inetpub\wwwroot\passwork\app\config\" -Force
Move-Item `
-Path "C:\inetpub\copy_files\passwork*" `
-Destination "C:\inetpub\wwwroot\passwork\app\keys\" -Force
Nach diesen Aktionen können Sie das temporäre Verzeichnis mit der Konfigurationsdatei und dem Lizenzschlüssel löschen:
- PowerShell
Remove-Item -Path "C:\inetpub\copy_files" -Recurse -Force
Rewrite-Regeln erstellen und Berechtigungen für den Passwork-Code zuweisen
Regeln erstellen, die URL-Anfragen in IIS ändern
Erstellen Sie web.config für das URL Rewrite-Modul:
- PowerShell
"<?xml version=`"1.0`" encoding=`"UTF-8`"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name=`"Imported Rule 1`" stopProcessing=`"true`">
<match url=`"^app/(.*)/(.*)/template.([a-z-A-Z0-9]+).html`" ignoreCase=`"false`" />
<conditions logicalGrouping=`"MatchAll`">
<add input=`"{REQUEST_FILENAME}`" matchType=`"IsFile`" ignoreCase=`"false`" negate=`"true`" />
</conditions>
<action type=`"Rewrite`" url=`"app/{R:1}/{R:2}/template.html`" />
</rule>
<rule name=`"Imported Rule 2`" stopProcessing=`"true`">
<match url=`"^extension/js/(.*)/(.*)/template.([a-z-A-Z0-9]+).html`" ignoreCase=`"false`" />
<action type=`"Rewrite`" url=`"extension/js/{R:1}/{R:2}/template.html`" />
</rule>
<rule name=`"Imported Rule 3`" stopProcessing=`"true`">
<match url=`"^(.*)$`" ignoreCase=`"false`" />
<conditions logicalGrouping=`"MatchAll`">
<add input=`"{REQUEST_FILENAME}`" matchType=`"IsDirectory`" ignoreCase=`"false`" negate=`"true`" />
<add input=`"{REQUEST_FILENAME}`" matchType=`"IsFile`" ignoreCase=`"false`" negate=`"true`" />
</conditions>
<action type=`"Rewrite`" url=`"index.php?_url=/{R:1}`" appendQueryString=`"true`" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>" | Out-File -FilePath "C:\inetpub\wwwroot\passwork\public\web.config" -Encoding UTF8
Berechtigungen für den physischen Speicherort von Passwork zuweisen
Ändern Sie die Berechtigungen für das Systemverzeichnis und legen Sie Berechtigungen für den IIS-Webserver fest:
- PowerShell
Invoke-Expression "icacls 'C:\inetpub\wwwroot' /grant 'Users:(OI)(CI)`M'"
Invoke-Expression "icacls 'C:\inetpub\wwwroot' /grant 'IIS_IUSRS:(OI)(CI)`M'"
Invoke-Expression "icacls 'C:\inetpub\wwwroot' /grant 'IUSR:(OI)(CI)`M'"
Wenn Windows Server die RU-Lokalisierung verwendet, werden Berechtigungen mit folgendem Befehl zugewiesen:
- PowerShell
Invoke-Expression "icacls 'C:\inetpub\wwwroot' /grant 'Users:(OI)(CI)`M'"
PHP-Version registrieren und Webserver neu starten
PHP für die neue Passwork-Version registrieren
Importieren Sie Module für IIS und PHP Manager:
- PowerShell
Import-Module IISAdministration
Import-Module WebAdministration
Add-PsSnapin PHPManagerSnapin
Entsperren Sie die IIS-Konfigurationsdatei zur Registrierung von PHP:
- PowerShell
Invoke-Expression "$env:windir\system32\inetsrv\appcmd.exe unlock config -section:system.webServer/handlers"
Registrieren Sie die PHP-Version:
- PowerShell
New-PHPVersion -ScriptProcessor "$env:ProgramFiles\php8.2\php-cgi.exe" -SiteName "Passwork Web Site" -VirtualPath "/"
IIS-Webserver neu starten
Um Änderungen in IIS zu aktivieren, müssen Sie den IIS-Webserver neu starten:
- PowerShell
Restart-Service -Name "W3SVC"