Windows Server 2016/2019
Passwork is not demanding on the resources of the server(s). The amount of resources (RAM, CPU, HDD) and the number of servers depends on the number of active users, the amount of stored data, and the requirements for system fault tolerance.
💡 If the server has 2-4 GB RAM, it is recommended to enable a SWAP file to build all libraries correctly.
Press Win+X, then Y and change default hostname. Change server hostname to passwork to enable passwork.local domain in your private network.
To complete changes reboot the server.
Open “Server Manager” and add “Web Server (IIS)” role.
Install "CGI" for "IIS".
Allow inbound UDP connection on 5353 port in firewall settings.
Download MongoDB 6
Download MongoDB 6.0 from the official website and run the installation
During the installation process, select "Complete" in the "Choose Setup Type" item
Then press "Next"
Uncheck installation — MongoDB Compass and run installation — MongoDB
Installing the administration utilities
In MongoDB versions 5.0 and higher, you must install the administration utilities to perform standard backup and restore commands.
Download the administration utilities from the official MongoDB site by following the link
Perform installation of default utilities, these utilities will be located in the directory — C:\Program Files\MongoDB\Tools\100\bin\
Installing the mongosh utility
Download the mongosh utility from the official MongoDB website using this link
Unzip the .zip archive to the download directory using — PowerShell
Move the extension and the mongosh utility to the directory — Tools
Test the connection to MongoDB with the following commands in — PowerShell
Windows Firewall Setup
Go to your “Control Panel” and then click on “System and Security”. Once there, click on “Windows Firewall”.
You should now see your Windows firewall like this:
Click on “Allow an app or feature trough Windows Firewall”, your window will change. Click on “Allow another app.” -> click “Browse” and add MongoDB Database Server application "C:\Program Files\MongoDB\Server\6.0\bin\mongod.exe", then click "Add" and "Ok".
Verify that MongoDB has started successfully
Verify that MongoDB has started successfully by checking the log file at C:\Program Files\MongoDB\Server\6.0\log\mongod.log for the following line: [initandlisten] waiting for connections on port 27017
💡 PHP version 8.2 must be installed. Newer versions are not yet supported.
- Check the properties of the archive. Remove the property "locked" if the archive received it when downloading.
- Unpack the archive
- Move the folder with the unpacked archive (In this example the path is C:\Program Files\php8)
Download and install Visual C++ Redistributable Packages for Visual Studio.
⬇️ https://download.visualstudio.microsoft.com/download/pr/b929b7fe-5c89-4553-9abe-6324631dcc3a/296F96CD102250636BCD23AB6E6CF70935337B1BBB3507FE8521D8D9CFAA932F/VC_redist.x64.exe
And PHP Manager for IIS:
⬇️ https://github.com/phpmanager/phpmanager/releases/download/v2.7/PHPManagerForIIS_x64.msi
Go to — "Server Manager" → "Tools" → "Internet Information Services (IIS) Manager"
Expand the website and go to — "PHP Manager"
Click "Register new PHP version" and specify the path — C:\Program Files\php8.2\php-cgi.exe
Go down to the bottom and go to — "Enable or disable an extensions". Activate the following extensions as shown on the screenshot
After completing the steps, restart the edited website
Sign in to your Passwork customer portal:
If login failed add portal.passwork.pro to the trusted sites in IE settings (settings → security tab → trusted sites).
Download Passwork 6 as a ZIP-archive
💡 Please note that these instructions are for installing version 6 of Passwork (6.x.x). To install previous versions of Passwork, contact technical support.
Extract archive and copy content to “C:\inetpub\wwwroot\” directory.
Set correct permissions
Open IIS Manager, then right click on website and click “Edit permissions”.
Press “Edit”, then “Add” and search for “IUSR” object. Select “IUSR” and grant “Write” permissions then click “Ok” twice.
Change website physical path
Right click on “Default Web Site” > “Manage Website” > “Advanced Settings”. Change website physical path to “C:\inetpub\wwwroot\public\”, then click “Ok”.
Rewrite rules
Download and install URL Rewrite : The Official Microsoft IIS Site
⬇️ https://www.iis.net/downloads/microsoft/url-rewrite#additionalDownloads
Close IIS Manager and open it again, select a website. Double click on “URL Rewrite” icon. Click “Import rules” and select .htaccess file from website root directory, then click “Open” and “Import” buttons.
Click “Apply” button once imported.
Open http://passwork.local to access website.
When you open Passwork for the first time, you will see an installation wizard that will check if the server is configured correctly and allow you to enter the basic parameters.
💡 Leave all fields at their default values if you are installing a new copy of Passwork
Sign up an administrator
Enter the username and password for the first user. The user will automatically become the administrator and owner of the organization.
Open “Server Manager”, go to “Tools” and click on “Internet Information Services (IIS) Manager”, select server and double click on “Server Certificates”, then import certificate.
Go to sites, select your site and click “Bindings”. Select “https” protocol from drop-down list. Enter hostname “passwork.local”. Select SSL certificate from the list (in our case cert name is “https”).
Then click “Close”.
Check SSL connection by going to https://passwork.local.
When working over an SSL connection (HTTPS), the Chrome browser requires the Secure and SameSite flags for the cookies. Without these flags, the browser will not accept cookies, and you will not be able to log into Passwork in Chrome.
To set these flags, enable the session.cookie_secure parameter in the C:\Program Files\php8.2\php.ini file:
And set the parameter disableSameSiteCookie ([application] section)in file C:\inetpub\wwwroot\app\config\config.ini to value Off:
💡 Please note that the config.ini file is generated after going through the initial setup on the installation page.
💡 Do not set these parameters or reset them to their original value if you change your mind about using SSL and will be working over the HTTP protocol.
Background tasks are jobs that run on the scheduler in the background. For example, LDAP synchronization, loading favicons, and other tasks that require a lot of time, constant execution, or resource allocation.