Windows server 2016/2019
Press Win+X, then Y and change default hostname. Change server hostname to passwork to enable passwork.local domain in your private network.
Open “Server Manager” and add “Web Server (IIS)” role.
Open link https://www.mongodb.com/download-center/community choose “Server”, in the “Version” field, select the 4.2 version, in the “OS” field, select “Windows”, in the “Package” field, select “MSI”, then click “Download”. The process of downloading the MongoDB package will begin. Run the downloaded file to begin the installation process.
Or you can use the link https://fastdl.mongodb.org/win32/mongodb-win32-x86_64-2012plus-4.2.0-signed.msi to download the current version (at the time of writing the instructions) directly.
Check "Install MongoD as a Service". Click "Next".
Tick off “Install MongoDB Compass”. Click “Next” then “Install” to start installation process.
Click “Finish” after installation ends.
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\4.2\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\4.2\log\mongod.log for the following line: [initandlisten] waiting for connections on port 27017
We will use Web Platform Installer for PHP installation, so open IE and go to https://www.microsoft.com/web/downloads/platform.aspx URL to install the extension.
Then click “Run”.
Accept terms and press “Install”. Press “Finish” after installation ends.
Open “Server Manager”, go to “Tools” and click on “Internet Information Services (IIS) Manager”, select server and double click on “Web Platform Installer”.
Go to “Products” tab and search for PHP. Select PHP 7.3 from the list and press “Add”. Then press “Install” and accept third party license terms.
You will see PHP Manager for IIS failed to install, this notice can be ignored. Click “Finish”. Click “Finish”.
Go to https://windows.php.net/downloads/pecl/releases/mongodb/1.5.5/php_mongodb-1.5.5-7.3-nts-vc15-x86.zip to download MongoDB PHP Driver.
Go to https://github.com/phalcon/cphalcon/releases/download/v3.4.4/phalcon_x86_vc15_php7.3_3.4.4_nts.zip to download Phalcon Framework.
Extract the “php_mongodb-1.5.5-7.3-nts-vc15-x86.zip” archive and copy “php_mongodb.dll” to “C:\Program Files (x86)\PHP\v7.3\ext”.
Extract the “phalcon_x86_vc15_php7.3_3.4.4_nts.zip” archive and copy “php_phalcon.dll” to “C:\Program Files (x86)\PHP\v7.3\ext”.
Open “C:\Program Files (x86)\PHP\v7.3\php.ini” in Notepad and add to the [Extension List] section the following lines:
Save modifications and close the Notepad.
Download and install Visual C++ Redistributable Packages for Visual Studio 2015. Choose "vcredist_x86.exe" version.
Restart “IIS” to reload PHP extensions.
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 as a ZIP-archive.
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”.
Using the “Web Platform Installer” install the “URL Rewrite” module.
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 (x86)\PHP\7.3\php.ini file:
And set the parameter disableSameSiteCookie ([application] section)in file C:\inetpub\wwwroot\app\config\config.ini to value Off:
💡 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