An open API service indexing awesome lists of open source software.

https://github.com/drewmarsh/osticket-installation

Prerequisites setup (IIS, FastCGI, PHP, MySQL Server, HeidiSQL, Rewrite) & osTicket installation in an Azure virtual machine
https://github.com/drewmarsh/osticket-installation

azure fastcgi help-desk-implementation internet-information-services mysql osticket ticketing-system

Last synced: 8 months ago
JSON representation

Prerequisites setup (IIS, FastCGI, PHP, MySQL Server, HeidiSQL, Rewrite) & osTicket installation in an Azure virtual machine

Awesome Lists containing this project

README

          



Banner

### ๐Ÿ“ Part 1: Prerequisites & osTicket Installation
### ๐Ÿ‘‰ [Part 2: Post-Installation Configuration](https://github.com/drewmarsh/osTicket-post-install-configuration)
### ๐Ÿ‘‰ [Part 3: Ticket Lifecycle Demo](https://github.com/drewmarsh/osTicket-ticket-lifecycle-demo)

# ๐Ÿง  Technologies Used
- Microsoft Azure (Cloud computing)
- Microsoft Remote Desktop
- Internet Information Services (IIS)

# ๐Ÿ“‹ List of Prerequisites
- Microsoft Azure Virtual Machine (Windows 10 Professional x64 22H2)
- osTicket v1.15.8
- MySQL v5.5.62 (win32)
- Heidi SQL build 12.3.0.6589
- php-7.3.8-nts-Win32-VC15-x86
- PHP Manager for IIS v1.5.0
- IIS URL Rewrite Module 2
- Microsoft Visual C++ 2015-2022 Redistributable (x86) - 14.34.31931

# ๐Ÿ“ฅ Setup & Installation

### ๐Ÿ–ฅ๏ธ [Create and Access Azure Virtual Machine](https://github.com/drewmarsh/azure-creating-VM)

### ๐ŸŒ Enable Internet Information Services (IIS)

1. Navigate to **Control Panel** > `Uninstall a program` > `Turn Windows features on or off`
2. Tick โœ…`Internet Information Services`
3. Expand **Internet Information Services** > **World Wide Web Services** > **Application Development Features**
4. Tick โœ…`CGI` > `OK` > After it finishes, click `Close`

Enable ISS and CGI

### ๐Ÿ—„๏ธ Install Required Software

1. Install MySQL Server v5.5.62
- Choose `Typical setup`
- Select `Developer machine`
- Choose `Multifunctional database`
- Tick โœ…`Include Bin Directory in Windows PATH`
- Enter root password
- Click `Execute`
- After it concludes, click `Finish`

Install MySQL

2. Install Visual C++ Redistributable

Install Visual C++ Redistributable

3. Install PHP Manager for IIS

Install PHP Manager for IIS

4. Install URL Rewrite Module for IIS

Install URL Rewrite Module for IIS

### ๐Ÿ˜ Install and Configure PHP

1. Download PHP binaries for Windows
2. Extract files to `C:\PHP`
3. Rename `php-7.3.8-nts-Win32-VC15-x86` to `PHP`
4. In the PHP folder, rename `php.ini-production` to `php.ini`
5. Open `php.ini` and make the following changes:
- Uncomment `;extension_dir = "ext"` by removing the semicolon
- Add the following lines to the bottom of the file:

```
;Enable extensions
extension=C:\PHP\ext\php_mysqli.dll
extension=C:\PHP\ext\php_gd2.dll
extension=C:\PHP\ext\php_imap.dll
extension=C:\PHP\ext\php_curl.dll
extension=C:\PHP\ext\php_pdo_mysql.dll
extension=C:\PHP\ext\php_mbstring.dll
extension=C:\PHP\ext\php_intl.dll
zend_extension=C:\PHP\ext\php_opcache.dll

;FastCGI settings
fastcgi.impersonate = 1
cgi.fix_pathinfo = 1
cgi.force_redirect = 0

;Security setting
open_basedir = "C:\inetpub\wwwroot;C:\Windows\Temp;C:\PHP\temp"
```

Configure PHP.ini

### ๐Ÿ”ง Configure IIS for PHP

1. Open **Internet Information Services (IIS) Manager**
2. Select your server in the left pane
3. Open `Handler Mappings`
4. Click `Add Module Mapping` in the right pane
5. Fill in the following:
- Request path: `*.php`
- Module: `FastCgiModule`
- Executable: `C:\PHP\php-cgi.exe`
- Name: `PHP_via_FastCGI`
6. Click `OK` and accept the prompt to create a FastCGI application

Configure IIS for PHP

### โš™๏ธ Set Up FastCGI Settings

1. In **Internet Information Services (IIS) Manager**, select the server
2. Open `FastCGI Settings`
3. Find the PHP entry and double-click it
4. Under **Environment Variables** click `โ€ฆ` and then `Add`
5. Add the following environment variables and then press `OK` > `OK`:
- `PHP_FCGI_MAX_REQUESTS` : `10000`
- `PHPRC` : `C:\PHP`

FastCGI Settings

### ๐Ÿ“„ Configure Default Document

1. In **Internet Information Services (IIS) Manager**, select the server
2. Open `Default Document`
3. Click `Addโ€ฆ` in the right panel and then add `index.php` to the list

Configure Default Document

### ๐Ÿงช Restart IIS & Test PHP
1. In **Internet Information Services (IIS) Manager**, select the server
2. Click `Restart` in the right pane
3. Create a file named `phpinfo.php` in your web root (`C:\inetpub\wwwroot`) with this content:

```php

```
4. Access it through your browser: `http://localhost/phpinfo.php`

Test PHP


### ๐ŸŽซ osTicket Setup

1. Extract the contents of osTicket-v1.15.8 ("scripts" and "upload" folder)
2. Place the "upload" folder in `C:\inetpub\wwwroot`
3. Rename the "upload" folder to `osTicket`

4. Navigate to `C:\inetpub\wwwroot\osTicket\include`
5. Rename `ost-sampleconfig.php` to `ost-config.php`
6. Set permissions for `ost-config.php`:
- Right-click `ost-config.php` > `Properties` > `Security` tab > `Advanced`
- `Disable inheritance` > `Remove all inherited permissions from this object`
- Click `Add` > `Select a principal` > In the text field, enter "everyone"
- Tick โœ…`Full control` > `OK` > `Apply` > `OK` > `OK`

osTicket Setup 1

7. Then, in **Internet Information Services (IIS) Manager**, select the server and click `Restart` in the right pane
8. In the left panel, expand **Sites** > **Default Web Site**, and then click **osTicket**

> [!NOTE]
> If **osTicket** does not show up, restart the entire **Internet Information Services (IIS) Manager** application

9. Click `Browse *:80 (http)` in the right panel

osTicket Setup 2

### ๐Ÿ—ƒ๏ธ HeidiSQL Installation & Configuration

1. Install and open HeidiSQL. Dismiss the donation message and then press `+New`
2. In the **Password:** field, enter the root password that was configured previously during the setup of MySQL Server 5.1
3. Click `Open`
4. On the left panel of HeidiSQL, right-click `Unnamed` and then navigate to `Create new` > `Database`, in the **Name:** field, enter `osTicket` and then press `OK`. Finally, close out of HeidiSQL.

Install HeidiSQL

Configure HeidiSQL

### ๐Ÿ Complete osTicket Installation

1. Navigate to `localhost/osTicket/setup` and click `Continue ยป`
2. Fill out the **System Settings** section:
- Helpdesk Name: `osTicket`
- Default Email: `osTicket.support@gmail.com`

3. Fill out the **Admin User** section:
- First Name: `Drew`
- Last Name: `Marsh`
- Email address: `osTicket.drewmarsh@gmail.com`
- Username: `drewmarsh`
- Password: `securepassword`

4. Fill out the **Database Settings** section:
- MySQL Table Prefix: `ost_`
- MySQL Hostname: `localhost`
- MySQL Database: `osTicket`
- MySQL Username: `root`
- MySQL Password: `securepassword`

5. Click `Install Now`

6. Once you see the "Congratulations!" screen, click the `Admin Panel` hyperlink

7. Finally, enter the username and password to access the osTicket dashboard

Complete osTicket Installation

osTicket Dashboard


### ๐Ÿ“ Part 1: Prerequisites & osTicket Installation
### ๐Ÿ‘‰ [Part 2: Post-Installation Configuration](https://github.com/drewmarsh/osTicket-post-install-configuration)
### ๐Ÿ‘‰ [Part 3: Ticket Lifecycle Demo](https://github.com/drewmarsh/osTicket-ticket-lifecycle-demo)