Sysadmin Guide

Manually Install using IIS 7


  1. In Server Manager, go to Roles and click Add Roles.

    • Select Web Server (IIS) and under Application Development, select CGI.
    • Agree to installing any requirements.
  2. Install the Microsoft Web Platform Installer form the Microsoft website.

    Using the WPI, install:

    • PHP (v 7.x recommended; make sure you get an x86, non-thread safe version)
    • URL Rewrite 2.0
    • These should install automatically; if not, install them too:
      • IIS 7.0 Fast CGI
      • PHP Manager for IIS
  3. Open IIS Manager (under Administrative tools in the Start menu).

    ../_images/iis-manager-2008.png

    Open the PHP Manager panel, fix any configuration issues that PHP Manager flags up, and click Check phpinfo() to display information about the installation.

    Note

    If you have problems with steps 2 and 3, you can install PHP manually.

  4. 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.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.0/php.exe” bin\install

  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 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.

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

Comments (0)

Add a comment

Add a comment

You need to log in before you can submit a comment.

Need a password reminder?