Manually install using IIS 8.5

Install on Windows 8, 9 & 10

This section describes how to install Deskpro using Windows 8.1/IIS Express 8.5 from scratch.

Install server software

  1. Install the Microsoft Web Platform Installer.

  2. Using the installer, find and install:

    • IIS Recommended Configuration
    • PHP 7.0.x (make sure you get an x86, non-thread safe version)
    • IIS Manager
    • PHP Manager
    • URL Rewrite 2.0
  3. Follow the instructions in the section “Enabling FastCGI support in IIS” on this page.

  4. Start IIS Manager and use the PHP Manager panel. Register the version of PHP you wish to use, and use Check phpinfo() to ensure PHP is working correctly.

  5. You should see a screen with the PHP version and PHP configuration information.

    If you get an error, run the php-win.exe executable from the command prompt to see if there is an error message providing further information about the problem.

  6. Install the latest MySQL server; an easy way to do this is using MySQL Installer, select Server Only (despite the name, this also installs the command line client) and set the configuration type as Server Machine.

    During the install, you will be prompted to create a root MySQL password; remember this.

    You will also be able to set the MySQL server so that it runs as a service and starts automatically.

Install Deskpro

  1. Download the latest version of Deskpro On-Premise fromhttps://www.deskpro.com/downloads/deskpro.zip.

  2. Create a directory C:\deskpro

  3. Unzip the contents of the deskpro.zip file into C:\deskpro.

  4. Create a Site with the physical path being C:\deskpro\www.

    Or you can edit the Default Web Site by right clicking it in the left navigation pane, and then select Manage Website > Advanced Settings.

    From the Advanced Settings window, edit the Physical Path to be C:\deskpro\www

  5. Set up a Scheduled Task to run php-win.exe with C:\deskpro\bin\cron as an argument once per minute.

    To do this, open Task Scheduler and under the “Actions” section on the right, select Create Task. Use the following details:

    • Name: Deskpro Task
    • Security Options: * Select the user who owns the files (e.g. your currently logged-in user) * Select “Run whether user is logged on or not”
    • Go to the Triggers tab and click “New” * Select “Daily” * Under Advanced, input “Repeat task every every 1 minute indefinitely”
    • Go to the Actions tab and click “New” * Action: Start a program * Program: Click Browse and locate php-win.exe (typically C:Program Files (x86)PHP<version>php-win.exe). * Arguments: bin\cron * Start In: C:\deskpro

    See also: Setting up a Windows Scheduled Task.

  6. Install Deskpro by opening the command prompt and running the special install command:

cd C:\deskpro
"C:\path\to\php-win.exe" bin\install

You will need to use the same path to PHP that you used while configuring the scheduled task. For example:

cd C:deskpro “C:Program Files (x86)PHPv7.0php-win.exe” bininstall
  1. In your browser, go to http://localhost (or wherever IIS is serving the DeskPRO site), and follow the final steps.

    If you get a warning that HTTP methods are being blocked by your server, go to the IIS Manager Handler Mappings panel, edit the settings for php files, click Request Restrictions and select All verbs (more details here).

Final steps

For production, you should ensure that write access to the files in wwwroot is restricted to the IIS worker process using Application Pool Identities.

You should also have Deskpro access the database through a MySQL user with more limited privileges than the root user. On Windows systems, you will have a shortcut to the command line MySQL client where you can do this.

Log in as the root MySQL user and run the following MySQL commands:

CREATE USER 'deskpro_user'@'127.0.0.1' IDENTIFIED BY 'password1';

(replacing “password1” with a more complex password of your choice).

GRANT ALL PRIVILEGES ON deskpro.* TO  'deskpro_user'@'127.0.0.1';

(this assumes the default database name ‘deskpro’ is being used: if you have changed the DeskPRO database, you should replace ‘deskpro’ in the deskpro.* part above with whatever name you used).

FLUSH PRIVILEGES;

Now edit config/config.database.php to use the new MySQL user and password.

We recommend that you now install Elasticsearch to enable greatly improved search capabilities for agents and users.

Troubleshooting

You should be able to troubleshoot most installation problems by following the installation wizard’s instructions.

If you run into another problem, browse or search the installation section of the DeskPRO Knowledgebase.

These articles cover the most common problems that can prevent you getting to the installation wizard stage:

“The FastCGI process exited unexpectedly” error

“The program can’t start because MSCVR110.dll is missing” error

Invalid php.ini directive error

Can’t change invalid upload_tmp_dir value

“Existing tables were detected in your database” error

Configuring HTTP verbs on IIS

Data directory is not writable

Published: 20/03/2017

Last updated: 30/10/2017