  You're browsing the documentation for an old version of SupportPal. Consider upgrading to the [latest version](https://docs.supportpal.com/current/System+Requirements). 

# System Requirements

SupportPal requires a fairly standard PHP & MySQL server setup in order to be installed and function correctly. If you require any assistance with setting up SupportPal or determining if your system can support SupportPal, please contact us.

## PHP Version

PHP versions **7.0.8 - 7.3.x** are supported.

For assistance installing a new version of PHP please contact your hosting provider or server administrator.

## PHP Extensions

   Required Optional   - BCMath
- cURL
- DOM
- FileInfo
- GD (*requires libpng and libjpeg*)
- Iconv
- [ionCube Loaders](http://www.ioncube.com/loaders.php)
    - **v10.2 and above** for PHP 7.0.8 - 7.2.x
    - **v10.3 and above** for PHP 7.3.x
- JSON
- Mbstring
- OpenSSL
- PDO (with MySQL Client Driver 5.6.0+ or [MySQLnd](http://php.net/manual/en/book.mysqlnd.php) 5.0.9)
- Tokenizer
- XML
 
  - IMAP - when using [email download](Email+Download) to pull in department tickets
- LDAP - when using [LDAP operator authentication](LDAP+Accounts)
- Gettext - when using [SAML Authentication](SAML+Authentication)
- Date - when using [SAML Authentication](SAML+Authentication)
- Zlib - when using [SAML Authentication](SAML+Authentication)
 
   PHP extensions differ depending on your server, your host and other system variable. For assistance installing missing extensions, please contact your hosting provider or server administrator.

## PHP Settings

Your PHP configuration must adhere to the following settings:

- **`allow_url_fopen` Enabled**  
     To use Gravatar and other SupportPal features, [`allow_url_fopen`](http://php.net/manual/en/filesystem.configuration.php#ini.allow-url-fopen) must be enabled in your PHP configuration.
- **IPv6 Support**  
     If your server has IPv6 networking support, this should be enabled by default. However if not please ensure you have the `php-sockets` extension enabled and PHP has been compiled with the `--enable-ipv6` flag.
- **PNG & JPG Support**  
     If the [PHP GD extension](http://php.net/manual/en/image.installation.php) has been manually compiled, please ensure the `--with-png-dir` and `--with-jpeg-dir` flags are provided.
- **Disabled functions**  
     If you're running under a particularly strict environment, please ensure that the following functions are not listed under the `disable_functions` directive: `ini_set`
- **Memory Limit**  
     A minimum of 128MB addressable memory is required to install and use SupportPal. We recommend at least 256 MB.

For assistance on modifying your PHP configuration, please contact your hosting provider or server administrator.

## File Permissions

The following directories (and directories within recursively) must be writable by the PHP/Web Server process.

- `storage/`
- `config/`
- `bootstrap/cache/`

### Linux

We recommend setting the above directories to *755 permissions*. You may also need to adjust the owner and group of the directories.

```
chmod -R 755 /path/to/directory
chown -R www-data:www-data /path/to/directory
```

  If you're using CentOS, it has SELinux enabled by default which has measures in place to prevent `httpd` from writing to files, beyond the normal file permissions. You need to apply `httpd_sys_rw_content_t` to the directories: ```
chcon -Rv --type=httpd_sys_rw_content_t /path/to/directory
```



### IIS (Windows)

Right click on the folder containing the SupportPal files, click *Properties* and then the *Security* tab. Click *Edit...* and then *Add...*, enter `IUSRS` and click *Check Names*. Click *OK*, and check the *Full Control* checkbox in the permissions. Do the same for the `IIS_IUSRS` group too.

## Database

### Version

MySQL Server **5.6.0 - 5.7.x, 8.0.x** supported. MariaDB **10.0 - 10.4** also supported.

### User Privileges

For day to day use, the following database privileges are required.

- DELETE
- INSERT
- LOCK TABLES
- SELECT
- UPDATE

For installing and upgrading the system, as well as activation and deactivation of plugins, the following additional privileges are required.

- ALTER
- CREATE
- DROP
- INDEX

### Settings

We recommend the following MySQL configuration directives are changed:

- `<a class="external-link" href="https://dev.mysql.com/doc/refman/5.7/en/server-system-variables.html#sysvar_max_allowed_packet" rel="nofollow">max_allowed_packet</a>` - we recommend greater than 20MB to ensure large emails and embedded images are correctly handled.

For assistance on modifying your MySQL configuration, please contact your hosting provider or server administrator.

## Web Server

SupportPal supports Apache, nginx and IIS web server, in all cases you must enable the **mod\_rewrite module** for SEO friendly URLs.

Apache works out of the box, however for nginx and IIS you will need to install the [rewrite rules](New+Installation#WebServer).

  **HTTP Request Verbs**  
 Please ensure your web server is configured to allow HTTP `DELETE`, `GET`, `OPTIONS`, `POST` and `PUT` requests. If using Apache and have [mod\_allowmethods](https://httpd.apache.org/docs/2.4/mod/mod_allowmethods.html) enabled you may need to update your web server configuration to permit the verbs. 

## Firewall Requirements

Outbound port 443 access to licensing.supportpal.com