Difference between revisions of "Cheetah System Requirements"

From Cheetah Documentation Wiki
Jump to navigation Jump to search
 
(39 intermediate revisions by 2 users not shown)
Line 3: Line 3:
 
A default Cheetah installation works with most common configurations of hosting server, however, since Cheetah is a package with multiple scripts and apps, it is very important to ensure that all of the following requirements are met. Most of the technical problems occur due to improper server setup, so make sure that your hosting provider is Cheetah-compatible.
 
A default Cheetah installation works with most common configurations of hosting server, however, since Cheetah is a package with multiple scripts and apps, it is very important to ensure that all of the following requirements are met. Most of the technical problems occur due to improper server setup, so make sure that your hosting provider is Cheetah-compatible.
  
To help avoid trouble, we gathered a number of '''[[https://www.cheetahwsb.com/page/hosting|Recommended Hosting Providers]]''' that have Cheetah-ready accounts and experience with managing accounts that have Cheetah installed. Some of them offer instant installation or even pre-installed Cheetah.
+
To help avoid trouble, we gathered a number of [https://www.cheetahwsb.com/page/hosting Recommended Hosting Providers] that have Cheetah-ready accounts and experience with managing accounts that have Cheetah installed. Some of them offer instant installation or even pre-installed Cheetah.
 +
 
 +
Providing that the server is properly configured, it is possible to run Cheetah on a shared hosting account although not recommended. It is strongly suggested that you have at least a VPS for Cheetah. A '''dedicated server''' is even better and is the recommended choice.
 +
 
 +
'''NOTE:''' If you do decide to go with shared hosting to keep costs down please keep the following in mind. Most shared hosting accounts do not meet the requirements for many of the PHP setting requirements listed below. Especially memory_limit, max_execution_time, upload_max_filesize and exec(). So make sure the hosting company you choose allows those to be changed or you will have problems running Cheetah.
  
Providing that the server is properly configured, it is possible to run Cheetah on a shared hosting account. We do recommend, however, that you have a VPS or a Dedicated Server for Cheetah.
 
  
 
== Server Requirements ==
 
== Server Requirements ==
  
* Linux/Unix (Red Hat, Debian, FreeBSD, Mandrake, etc.) or Windows OS
+
* Linux/Unix (Red Hat, Ubuntu, Debian, FreeBSD, Mandrake, etc.). Windows OS has also been known to work, but Cheetah is not tested on Windows so is not recommended.
** '''Note:''' Linux kernel 2.6.32 or higher is needed for ffmpeg.exe
+
** '''Note:''' Linux kernel 2.6.32 or higher is needed for ffmpeg
* Apache v.1.3 and higher or LiteSpeed web server. Other web servers can be used too, but custom rewrite rules are required, we have one for [[m/cheetah_docs/chapter/how-to-setup-cheetah-on-nginx|nginx web server]].
+
** '''Windows OS''' is not recommended. Not many Cheetah users run on Windows based servers, so support will be very limited. Cheetah is also developed for and only tested on Linux based servers.
* PHP 5.4.0 or higher. PHP 7 recommended.<br />
+
* '''Apache v.1.3''' and higher or '''LiteSpeed''' web server. Other web servers can be used too, but custom rewrite rules are required, we have one for [[How_to_setup_Cheetah_on_Nginx|Nginx]].
 
+
* '''PHP 5.5.0''' or higher. '''PHP 7''' recommended. '''Cheetah is not yet compatible with PHP 8'''<br />
** PHP-CLI (command line version) should also be installed, and it should be configured the same way and have the same extensions required by Cheetah as the DSO/CGI version.
+
** '''PHP-CLI''' (command line version) should also be installed, and it should be configured the same way and have the same extensions required by Cheetah as the FPM version.
 +
*** '''For Cheetah versions above 1.2.0'''
 +
**** '''Hosting''' needs to be running '''PHP-FPM'''. PHP as an Apache module(DS0) is outdated and no longer supported. PHP running as a '''PHP-FPM''' application is necessary for the Cheetah update system and other features. You will not be able to update Cheetah without it.
 +
**** '''PHP-FPM''' needs to be running as the same user that uploaded the website files.
 +
**** '''NOTE:''' If your choice of hosting is providing Plesk or cPanel, then this is normally not a issue as these providers normally have PHP setup this way by default. This is normally only a concern for those that are setting up and configuring their own servers.
 
* '''register_globals''' must be '''Off'''<br />
 
* '''register_globals''' must be '''Off'''<br />
'''safe_mode''' must be '''Off'''<br />
+
* '''safe_mode''' must be '''Off'''<br />
'''exec()''' (executable files) must be '''allowed'''<br />
+
* '''exec()''' (executable files) must be '''allowed'''<br />
'''short_open_tag''' must be '''On'''<br />
+
* '''allow_url_fopen''' should be '''On'''<br />
'''allow_url_fopen''' should be '''On'''<br />
+
* '''allow_url_include''' should be '''Off'''<br />
'''allow_url_include''' should be '''Off'''<br />
+
* '''open_basedir''' should not have any value<br />
'''open_basedir''' should not have any value<br />
+
* '''upload_max_filesize''' should be '''1024M''' or higher<br />
'''upload_max_filesize''' should be '''1024M''' or higher<br />
+
* '''memory_limit''' should be '''256M''' or higher. '''512M''' or higher is '''highly recommended'''.
'''memory_limit''' should be '''256M''' or higher. '''512M''' or higher is '''highly recommended'''.
+
* '''max_execution_time''' must be set to '''300''' or higher. Some areas of Cheetah perform database backups. Script timeouts that occur if this setting is too low will cause problems during those backups.
* '''''mbstring''''', '''''mysql''''', '''''curl''''', '''''gd''''', '''''xsl''''', '''''json''''', '''''zip''''', '''''ftp''''', '''''openssl''''' ,'''''fileinfo''''' and '''''exif.'''''
+
* '''curl, gd, mbstring, xsl, json, fileinfo, openssl, zip, ftp, calendar, exif, pdo,''' and '''pdo_mysql '''extensions''' must be installed'''.
* '''[http://www.mysql.com/ MySQL 4.1.2]''' and higher.
+
* '''[http://www.mysql.com/ MySQL 5.5.3]''' and higher or '''[https://mariadb.org/ MariaDB 10.x]'''.
 
* The '''magic_quotes_gpc''' option must be disabled.
 
* The '''magic_quotes_gpc''' option must be disabled.
 
* If a security module is installed (such as '''mod_security''' for Apache), it should be able to be configured for specific folders (or disabled).
 
* If a security module is installed (such as '''mod_security''' for Apache), it should be able to be configured for specific folders (or disabled).
 
* '''mod_rewrite''' for Apache
 
* '''mod_rewrite''' for Apache
* Direct connection to cheetah.deanbassett.com should be able to be established (i.e. connection without requiring proxy authorization). This is required for license verification.
+
* Direct connection to https://www.cheetahwsb.com/ should be able to be established (i.e. connection without requiring proxy authorization). This is required for license verification.
* '''[http://www.boutell.com/gd/ GD library]''' compiled with '''FreeType''' fonts (for photo processing) or '''[http://imagemagick.org/ ImageMagick]''' as an alternative.
+
* '''[https://libgd.github.io/ GD library]''' compiled with '''FreeType''' fonts (for photo processing) or '''[http://imagemagick.org/ ImageMagick]''' as an alternative.
 
* '''Sendmail''' or '''Postfix''' programs for sending emails.
 
* '''Sendmail''' or '''Postfix''' programs for sending emails.
 
* Ability to create '''[http://www.unixgeeks.org/security/newbie/unix/cron-1.html Cron Jobs]'''.
 
* Ability to create '''[http://www.unixgeeks.org/security/newbie/unix/cron-1.html Cron Jobs]'''.
* You should be able to run executable files (you would need it for '''ffmpeg.exe''', which converts videos).
+
* You should be able to run executable files (you would need it for '''ffmpeg''', which converts videos).
  
 
== Server Requirements for Media Streaming ==
 
== Server Requirements for Media Streaming ==
Line 47: Line 54:
 
-----
 
-----
  
'''''It is a good idea to send the list above to your hosting provider to make sure the server is ready for installation. If all the above requirements are met you are all set to proceed to [[m/cheetah_docs/chapter/installing-cheetah|Cheetah Installation]]'''.''
+
'''''It is a good idea to send the list above to your hosting provider to make sure the server is ready for installation. If all the above requirements are met you are all set to proceed to [https://www.cheetahwsb.com/m/cheetah_docs/chapter/installing-cheetah Cheetah Installation]'''.''
 
 
  
 
-----
 
-----
Line 54: Line 60:
 
== Recommended Hosting Providers ==
 
== Recommended Hosting Providers ==
  
Over the years we have worked with many different hosting providers, and some of them are very experienced when it comes to managing Cheetah sites. Going for one of our '''[[page/hosting|Recommended Hosting Providers]]''' is a good idea for both starters and those willing to work with companies that have Cheetah experience. Most of our hosting partners provide automatic Cheetah installation and special discounts for Cheetah users.
+
Going for one of our [https://www.cheetahwsb.com/page/hosting Recommended Hosting Providers] is a good idea for both starters and those willing to work with companies that have Cheetah experience.
  
 
== Recommended Server Setup ==
 
== Recommended Server Setup ==
  
Since Cheetah is a resource-intensive platform, it is very important to "fine-tune" your server. In some cases (for popular sites) you may have to setup clustered servers, and/or a remote database server. Alternative "web-server" software, such as '''[http://nginx.org/ nginx]''' may also be beneficial to your site performance. Please refer to [[m/cheetah_docs/chapter/hosting-server-setup-recommendations|Hosting Server Setup Recommendations]] for the details on how you can tune-up your server.
+
Since Cheetah is a resource-intensive platform, it is very important to "fine-tune" your server. In some cases (for popular sites) you may have to setup clustered servers, and/or a remote database server. Alternative "web-server" software, such as [http://nginx.org/ nginx] may also be beneficial to your site performance. Please refer to [[Hosting_Server_Setup_Recommendations]] for the details on how you can tune-up your server.

Latest revision as of 06:21, 28 February 2022

Cheetah Hosting(System) Requirements

A default Cheetah installation works with most common configurations of hosting server, however, since Cheetah is a package with multiple scripts and apps, it is very important to ensure that all of the following requirements are met. Most of the technical problems occur due to improper server setup, so make sure that your hosting provider is Cheetah-compatible.

To help avoid trouble, we gathered a number of Recommended Hosting Providers that have Cheetah-ready accounts and experience with managing accounts that have Cheetah installed. Some of them offer instant installation or even pre-installed Cheetah.

Providing that the server is properly configured, it is possible to run Cheetah on a shared hosting account although not recommended. It is strongly suggested that you have at least a VPS for Cheetah. A dedicated server is even better and is the recommended choice.

NOTE: If you do decide to go with shared hosting to keep costs down please keep the following in mind. Most shared hosting accounts do not meet the requirements for many of the PHP setting requirements listed below. Especially memory_limit, max_execution_time, upload_max_filesize and exec(). So make sure the hosting company you choose allows those to be changed or you will have problems running Cheetah.


Server Requirements

  • Linux/Unix (Red Hat, Ubuntu, Debian, FreeBSD, Mandrake, etc.). Windows OS has also been known to work, but Cheetah is not tested on Windows so is not recommended.
    • Note: Linux kernel 2.6.32 or higher is needed for ffmpeg
    • Windows OS is not recommended. Not many Cheetah users run on Windows based servers, so support will be very limited. Cheetah is also developed for and only tested on Linux based servers.
  • Apache v.1.3 and higher or LiteSpeed web server. Other web servers can be used too, but custom rewrite rules are required, we have one for Nginx.
  • PHP 5.5.0 or higher. PHP 7 recommended. Cheetah is not yet compatible with PHP 8
    • PHP-CLI (command line version) should also be installed, and it should be configured the same way and have the same extensions required by Cheetah as the FPM version.
      • For Cheetah versions above 1.2.0
        • Hosting needs to be running PHP-FPM. PHP as an Apache module(DS0) is outdated and no longer supported. PHP running as a PHP-FPM application is necessary for the Cheetah update system and other features. You will not be able to update Cheetah without it.
        • PHP-FPM needs to be running as the same user that uploaded the website files.
        • NOTE: If your choice of hosting is providing Plesk or cPanel, then this is normally not a issue as these providers normally have PHP setup this way by default. This is normally only a concern for those that are setting up and configuring their own servers.
  • register_globals must be Off
  • safe_mode must be Off
  • exec() (executable files) must be allowed
  • allow_url_fopen should be On
  • allow_url_include should be Off
  • open_basedir should not have any value
  • upload_max_filesize should be 1024M or higher
  • memory_limit should be 256M or higher. 512M or higher is highly recommended.
  • max_execution_time must be set to 300 or higher. Some areas of Cheetah perform database backups. Script timeouts that occur if this setting is too low will cause problems during those backups.
  • curl, gd, mbstring, xsl, json, fileinfo, openssl, zip, ftp, calendar, exif, pdo, and pdo_mysql extensions must be installed.
  • MySQL 5.5.3 and higher or MariaDB 10.x.
  • The magic_quotes_gpc option must be disabled.
  • If a security module is installed (such as mod_security for Apache), it should be able to be configured for specific folders (or disabled).
  • mod_rewrite for Apache
  • Direct connection to https://www.cheetahwsb.com/ should be able to be established (i.e. connection without requiring proxy authorization). This is required for license verification.
  • GD library compiled with FreeType fonts (for photo processing) or ImageMagick as an alternative.
  • Sendmail or Postfix programs for sending emails.
  • Ability to create Cron Jobs.
  • You should be able to run executable files (you would need it for ffmpeg, which converts videos).

Server Requirements for Media Streaming

Some of Cheetah's features (such as Flash Chat, Flash IM, Boards, Video Recorder, Video Comments) require media streaming capabilities. To use those, you need to make sure that the following requirements are met:

  • VPS or Dedicated server is generally required in order to be able to install and run RMS (Ray Media Server). You would need access to the root or administrator account on the hosting server.
  • JRE (Java Runtime Environment) ver. 1.6 or higher should be installed.
  • Ports 1935, 1936 and 5080 should be open on the server.
  • Allowance of at least 15 KB/sec for media streaming for each user.



It is a good idea to send the list above to your hosting provider to make sure the server is ready for installation. If all the above requirements are met you are all set to proceed to Cheetah Installation.


Recommended Hosting Providers

Going for one of our Recommended Hosting Providers is a good idea for both starters and those willing to work with companies that have Cheetah experience.

Recommended Server Setup

Since Cheetah is a resource-intensive platform, it is very important to "fine-tune" your server. In some cases (for popular sites) you may have to setup clustered servers, and/or a remote database server. Alternative "web-server" software, such as nginx may also be beneficial to your site performance. Please refer to Hosting_Server_Setup_Recommendations for the details on how you can tune-up your server.