This page includes useful information on the supported operating systems as well as the software and hardware requirements that are needed to install and use SupportPro.
An active license with valid support and updates coverage is required to download and install SupportPro. Our 30 day free trial is the easiest way to try SupportPro. Owned licenses include 6 months from date of purchase and monthly licenses include lifetime support and updates.
SupportPro simply requires PHP and MySQL, thus it is possible to install and run it in a vast majority of systems. Below is a list of supported operating systems; we cannot provide support for operating systems that are not listed.
Windows support is available via Docker deployment methods.
PHP version 8.1.0 - 8.2.x is supported.
For assistance on installing a new version of PHP, please contact your hosting provider or server administrator.
Required | Optional |
---|---|
|
|
PHP extensions differ depending on your server, your host and other system variable. For assistance on installing missing extensions, please contact your hosting provider or server administrator.
Your PHP configuration must adhere to the following settings:
zlib.output_compression
Disabledallow_url_fopen
Enabledallow_url_fopen
must be enabled in your PHP configuration.php-sockets
extension enabled and PHP has been compiled with the --enable-ipv6
flag.--with-png-dir
and --with-jpeg-dir
flags are provided.disable_functions
directive: ini_set
For assistance on modifying your PHP configuration, please contact your hosting provider or server administrator.
The following directories (and directories within recursively) must be writable by the PHP/Web Server process.
addons/
bootstrap/cache/
config/
storage/
We recommend setting the above directories to 755 permissions.
chmod 755 /path/to/directory
You may also need to adjust the owner and group of the directories to be the web server user, for example:
chown -R www-data:www-data /path/to/directory
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
Right click on the folder containing the SupportPro 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.
MySQL Server 5.7 and 8.0 supported. MariaDB 10.2 - 10.11 also supported.
For day to day use, the following database privileges are required.
For installing and upgrading the system, as well as activation and deactivation of plugins, the following additional privileges are required.
We recommend the following MySQL configuration directives are changed:
max_allowed_packet
- we recommend greater than 20 MB 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.
DELETE
, GET
, OPTIONS
, POST
and PUT
requests. If using Apache and have mod_allowmethods enabled you may need to update your web server configuration to permit the verbs.SupportPro supports Apache, nginx and IIS web server.
Apache is supported out of the box.
On nginx, please create a new virtual host for SupportPro. The below is an example virtual host but will need editing for your specific environment (paths may vary):
server { listen 80 default_server; listen [::]:80 default_server; server_name _; # enable gzip gzip on; gzip_comp_level 6; gzip_min_length 500; gzip_proxied any; gzip_types text/plain text/css text/javascript application/json application/javascript; gzip_vary on; # add security headers add_header X-Frame-Options SAMEORIGIN always; add_header X-Content-Type-Options nosniff always; add_header X-XSS-Protection "1; mode=block" always; add_header Referrer-Policy strict-origin-when-cross-origin always; add_header Strict-Transport-Security max-age=31536000 always; # disable request entity max size. # https://nginx.org/en/docs/http/ngx_http_core_module.html#client_max_body_size client_max_body_size 0; root /var/www/supportpal; index index.php; # Hide Nginx version server_tokens off; # Remove index.php from GET requests. set $user_request 0; if ($request_method = GET) { set $user_request "GET"; } if ($request_uri ~* "^(.*/)index\.php/?(.*)$") { set $user_request "${user_request}-index.php"; } if ($user_request = "GET-index.php") { return 301 $1$2; } # Send all requests to SupportPal. location / { try_files /notexistent @backend; } # Allow direct access to asset files, if they don't exist show SupportPal 404 error page. location ~* \.(css|gif|ico|je?pg|js|png|swf|txt|eot|ttf|woff|woff2|svg|map)$ { try_files $uri $uri/ @backend; } # Allow direct access to resources/assets files, if they don't exist show SupportPal 404 error page. location resources/assets/ { try_files $uri $uri/ @backend; } # All SupportPal requests must be sent through index.php. location @backend { rewrite ^(.*)$ /index.php last; } location ~ \.php($|/) { include snippets/fastcgi-php.conf; # With php-fpm: fastcgi_pass unix:/var/run/php/php7.0-fpm.sock; } }
On IIS, please create a web.config
file in the root of your installation directory with the below contents:
<supportpal_base_url>
with your installation base URL<absolute_path_to_php_cgi.exe>
with the absolute path to your PHP cgi executable<?xml version="1.0" encoding="UTF-8"?> <configuration> <system.webServer> <staticContent> <remove fileExtension=".woff" /> <remove fileExtension=".woff2" /> <remove fileExtension=".json" /> <mimeMap fileExtension=".woff" mimeType="application/x-font-woff" /> <mimeMap fileExtension=".woff2" mimeType="application/font-woff2" /> <mimeMap fileExtension=".json" mimeType="application/json" /> </staticContent> <rewrite> <rules> <rule name="Add trailing slash to base" stopProcessing="true"> <match url="^$" ignoreCase="false" /> <conditions logicalGrouping="MatchAll"> <add input="{URL}" pattern="[^\/]$" /> </conditions> <action type="Redirect" url="<supportpal_base_url>/" /> </rule> <rule name="Remove index.php" stopProcessing="true"> <match url="^index.php/?(.*)$" ignoreCase="false" /> <conditions logicalGrouping="MatchAll"> <add input="{REQUEST_METHOD}" pattern="GET" /> <add input="{URL}" pattern="^.*/index\.php" /> </conditions> <action type="Redirect" redirectType="Permanent" url="<supportpal_base_url>/{R:1}" appendQueryString="true" /> </rule> <rule name="Allow assets" stopProcessing="true"> <match url="^" ignoreCase="false" /> <conditions logicalGrouping="MatchAll"> <add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" /> <add input="{URL}" pattern="(resources/assets/|\.(css|gif|ico|je?pg|js|png|swf|txt|eot|ttf|woff|woff2|svg|map)$)" /> </conditions> <action type="None" /> </rule> <rule name="Rewrite all else to index.php" stopProcessing="true"> <match url="^" ignoreCase="false" /> <action type="Rewrite" url="index.php" /> </rule> </rules> <outboundRules> <rule name="fix content-type" preCondition="PHPRequest"> <match serverVariable="RESPONSE_CONTENT_TYPE" pattern="text/html; charset=UTF-8,([^\/]+\/.+$)" ignoreCase="true" /> <action type="Rewrite" value="{R:1}" /> </rule> <preConditions> <preCondition name="PHPRequest"> <add input="{REQUEST_URI}" pattern=".*\.php" /> </preCondition> <preCondition name="ResponseIsHtml1"> <add input="{RESPONSE_CONTENT_TYPE}" pattern="^text/html" /> </preCondition> </preConditions> </outboundRules> </rewrite> <handlers> <remove name="WebDAV" /> <remove name="PHP-php" /> <remove name="ExtensionlessUrlHandler-Integrated-4.0" /> <add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="DEBUG,DELETE,GET,HEAD,OPTIONS,POST,PUT" type="System.Web.Handlers.TransferRequestHandler" resourceType="Unspecified" requireAccess="Script" preCondition="integratedMode,runtimeVersionv4.0" responseBufferLimit="0" /> <add name="PHP-php" path="*.php" verb="DEBUG,DELETE,GET,HEAD,OPTIONS,POST,PUT" modules="FastCgiModule" scriptProcessor="<absolute_path_to_php_cgi.exe>" resourceType="Either" requireAccess="Script" /> </handlers> <httpErrors errorMode="Detailed" /> <modules> <remove name="WebDAVModule" /> </modules> </system.webServer> <system.web> <authentication mode="Forms" /> </system.web> </configuration>
Outbound port 443 access to licensing.SupportPro.com and marketplace.SupportPro.com
Hardware requirements are dependent on the number of users and expected workload. Your exact needs may be more or less, depending on your workload. Your workload is influenced by factors such as - but not limited to - how many active users and operators there are and the frequency of tickets and replies.
For deployments with a lot of active users, or a large database (several hundred thousand records), we recommend to use separate servers for your web server and database; this ensures the database has dedicated resources and can ensure consistent performance.
In a fresh installation, SupportPro uses minimal space (approximately 100 MB). The database and storage/
directory is where you’ll see most growth. The storage/
directory includes things like caches, attachments, and log files.
We recommend using solid state drives for all deployments, particularly database servers, as this dramatically improves the responsiveness of SQL queries.
We recommend a minimum of 4 vCPU on all servers.
The following is the recommended minimum memory hardware guidance:
We also recommend having at least 2 GB of swap on your server, even if you currently have enough available RAM. Having swap will help reduce the chance of errors occurring if your available memory changes. We also recommend configuring the kernel’s swappiness
setting to a low value like 10
to make the most of your RAM while still having the swap available when needed.
SupportPro is tested against the browsers listed below. Other browsers and older browser versions may still work, but we will not provide support or fixes for these products.
JavaScript must be enabled in the web browser for the most feature rich experience. If JavaScript is disabled some functionality will not work correctly.
Browser | Supported Version(s) |
---|---|
Chrome | latest 2 versions |
Edge | latest 2 versions |
Firefox | latest 2 versions |
Safari | latest 2 versions |
The interface is designed with mobile first in mind. We recommend a device width of 360px
or above, any device with a width smaller than this will still work but may have visual defects and won’t offer the best user experience.
Article Number: 1
Author: Jan 31, 2024
Last Updated: May 17, 2024
Online URL: https://docs.supportpro.vn/article/system-requirements-1.html