Difference between revisions of "Installing WHMCS"

From WHMCS Documentation

 
(54 intermediate revisions by 10 users not shown)
Line 1: Line 1:
 
==Downloading WHMCS==
 
==Downloading WHMCS==
 
#Visit http://download.whmcs.com/
 
#Click the Download button under the Full Release heading - this will be the latest release version
 
  
 
<div class="docs-alert-info">
 
<div class="docs-alert-info">
 
<span class="title">Reseller Customers</span><br />
 
<span class="title">Reseller Customers</span><br />
If your license key was obtained via a reseller and you therefore do not have a login for our members area, your reseller will be able to provide the latest WHMCS files to you''
+
If you obtained your license key from a reseller and you don't have a login for our members area, your reseller can provide the latest WHMCS files to you.
 
</div>
 
</div>
  
==Installing Ioncube==
+
To download WHMCS:
 +
#Visit https://download.whmcs.com/
 +
#Click Download under the Full Release heading. This will be the latest release version.
 +
 
 +
==Installing ionCube Loader®==
 +
 
 +
WHMCS is encrypted using ionCube Loader to protect the source code. Most hosting providers compile ionCube support into the PHP build by default.
  
WHMCS is encrypted using Ioncube to protect the source code.  These days most servers/webhosts have Ioncube support compiled into the PHP build by default so you don't normally need to do anything extra for it.  However if you find you do need to install Ioncube on your server, then you can find out how to do this in our [[Ioncube Installation Tutorial]]
+
If you need to install ionCube on your server, see our [[Ioncube Installation Tutorial]].
  
 
==Creating a Database==
 
==Creating a Database==
WHMCS uses a MySQL database to store all settings and data. You will be asked to create one during the installation process, so best to create one beforehand. Technical information is detailed on the [[Database Setup]] page.
 
  
* [https://documentation.cpanel.net/display/1152Docs/MySQL+Database+Wizard Creating databases in cPanel]
+
<div class="docs-alert-warning">
* [http://download1.parallels.com/Plesk/Doc/en-US/online/plesk-customer-guide/65157.htm Created databases in Plesk]
+
WHMCS 8.8 and later support encrypted MySQL connections.
 +
* If your server requires encrypted MySQL connections, you cannot use the browser-based installation method below and instead must [[Install On The Command Line|use the command-line method]].
 +
* If your server has enabled encrypted connections but does not require them, you can use the browser-based installation method below and then update the <tt>configuration.php</tt> file after installation is complete.
 +
For more information, see [[System Environment Guide]] and [https://help.whmcs.com/m/installation/l/1706785-enabling-encrypted-mysql-connections Enabling Encrypted MySQL Connections].
 +
</div>
  
==Restrict Database Privileges==
+
WHMCS uses a MySQL® database to store settings and data. You must create one during the installation process, or create one before you begin. For more information, see our [[System Environment Guide]].
For day to day use, only the following database privileges are required. All others may be disabled.
 
  
*DELETE
+
* [https://docs.cpanel.net/cpanel/databases/mysql-database-wizard/ Creating databases in cPanel & WHM]
*INSERT
+
* [https://docs.plesk.com/en-US/17.0/customer-guide/advanced-website-databases.69535/ Creating databases in Plesk]
*SELECT
 
*UPDATE
 
*LOCK TABLES
 
  
Please note that installation, upgrading, activating, and deactivating modules require the following additional privileges.
+
==Database Privileges==
  
*ALTER
+
WHMCS requires specific database privileges for installations, updates, and daily use.
*CREATE
+
 
*DROP
+
For a complete list of the required privileges, see [[System_Environment_Guide#Database_Privileges|System Environment Guide]].
*INDEX
 
  
 
==Installing WHMCS==
 
==Installing WHMCS==
  
[[File:Videotutorial.png‎|center|link=https://www.youtube.com/watch?v=LXT75u41Mqc&hd=1|Watch Video Tutorial]]
+
<html><a href="https://www.youtube.com/watch?v=nxd8VYu8u5s&list=PLfpgUwyOgC7C4wwPhB7jEqSp_esXB31Jb&index=2&t=0s" class="docs-video-tutorial"><em>Watch the video tutorial for this feature</em><span>&nbsp;<img src="https://assets.whmcs.com/icons/youtube.png">&nbsp;</span></a></html>
  
 +
To install WHMCS, you can use the following process:
  
Installing WHMCS is very simple. The following steps will guide you through the process:
+
# Unzip the contents of the <tt>.zip</tt> file to a folder on your computer.
 +
# Rename the <tt>configuration.sample.php</tt> to <tt>configuration.php</tt>.
 +
# Edit the <tt>configuration.php</tt> file, removing the following lines:
 +
#:<source lang="yaml">
 +
// Prevent sample file execution. Remove from live configuration.
 +
return;
 +
</source>
 +
# Upload the entire <tt>whmcs</tt> folder to your website. If you experience problems, try uploading the folder in binary mode.
 +
# Optionally, rename the folder (for example, <tt>billing</tt>).<div class="docs-alert-warning">The administration area uses an <tt>admin</tt> folder. You cannot use <tt>admin</tt> as the installation folder name.</div>
 +
# Navigate to the installation script at <tt>http://www.example.com/whmcs/install/install.php</tt> to run the installation. If you see an ionCube-related error message, perform the ionCube steps above.
 +
# Follow the instructions to install WHMCS, including setting file permissions (see below), entering your license key, and setting up your primary administrator account.
 +
# Delete the installation folder from your web server and check the <tt>configuration.php</tt> file permissions again.
  
#Unzip the contents of the zip file to a folder on your computer
 
#Rename the file configuration.php.new to configuration.php
 
#Upload the entire whmcs folder to your website - if you experience problems, try uploading in binary mode
 
#Next you can rename the folder to whatever you like (billing, clients, etc...)
 
#Now visit the installation script at http://www.yourdomain.com/whmcs/install/install.php to run the installer process - if you get an Ioncube related error message, see the installation Ioncube steps above
 
#Follow the instructions on screen to install which will involve setting file permissions as listed below, entering your license key and setting up your primary admin account
 
 
<div class="docs-alert-warning">
 
<div class="docs-alert-warning">
<span class="title">Acceptable Password Characters</span><br />
+
<span class="title">Required file and folder permissions</span><br /><br />
The following characters should not be used in an administrator password & " ' < > (ampersand, double quotes, single quotes, less than or greater than). Any other symbols such as # ! £ $ % ^ * ( ) . , / etc… are perfectly acceptable.
+
<tt>/configuration.php          CHMOD 400 Readable<br />
 +
/attachments                CHMOD 777 Writable<br />
 +
/downloads                  CHMOD 777 Writable<br />
 +
/templates_c                CHMOD 777 Writable</tt><br /><br />
 +
The directory example permissions above may be overly permissive.  I.E. world read/write permission might not be necessary or appropriate for your hosting environment:
 +
* For suPHP or PHP suEXEC, you will need to restrict directories further. If you use DSO as your PHP handler, you must use <tt>644</tt> permissions.  
 +
* Limit access to only the account that owns the web server process. Make sure that no other system or user accounts can read your configuration file or modify any WHMCS-related files.
 
</div>
 
</div>
  
When complete, delete the install folder from your web server and CHMOD the configuration.php file back to 644.
+
<html><a href="https://www.whmcs.com/services#installation?utm_medium=docs" class="docs-video-tutorial"><em><small><b>Need help with installation?</b> Check our available services</small></em><span class="button">Services</span></a></html>
  
 +
==Installing WHMCS In cPanel & WHM==
 +
 +
<div class="docs-alert-danger">
 +
cPanel, L.L.C. deprecated the '''Site Software''' feature in cPanel & WHM version 104. We recommend using the manual installation method above.
 +
</div>
 +
 +
If you use cPanel & WHM, you can also install WHMCS directly from within the interface. To do this, see [https://help.whmcs.com/m/installation/l/1027775-configuring-cpanel-site-software-to-offer-whmcs Configuring cPanel Site Software to Offer WHMCS] and [https://help.whmcs.com/m/installation/l/1027779-installing-whmcs-via-cpanel-site-software Installing WHMCS via cPanel Site Software].
 +
 +
==Restricting Database Privileges==
 +
If you wish, once WHMCS is installed, you can remove certain privileges:
 +
*<tt>ALTER</tt>
 +
*<tt>CREATE</tt>
 +
*<tt>DROP</tt>
 +
*<tt>INDEX</tt>
 
<div class="docs-alert-warning">
 
<div class="docs-alert-warning">
<span class="title">Required file & folders permissions</span><br /><br />
+
<span class="title">Important</span><br />
/configuration.php          CHMOD 400 Readable<br />
+
These privileges would need to be granted again when upgrading WHMCS, and when activating and deactivating modules.
/attachments                CHMOD 777 Writeable<br />
 
/downloads                  CHMOD 777 Writeable<br />
 
/templates_c                CHMOD 777 Writeable<br /><br />
 
The above applies unless your php is suPHP or PHPSuExec. If using DSO as your php handler, you must use 644 permissions.
 
 
</div>
 
</div>
  
 
==Post Installation Suggested Steps==
 
==Post Installation Suggested Steps==
  
After installation is completed, we recommend that you go through and configure your new WHMCS system in the following order:x
+
After you complete installation, we recommend that you configure WHMCS in the following order:
 
 
#Perform the recommended [[Further Security Steps]]
 
#Login to the Admin Area and configure your General Settings (Setup > [[Configuration|General Settings]])
 
#Setup your Payment Gateways (Setup  > [[Payment Gateways]])
 
#Setup your Products & Services (Setup  > [[Products and Services]])
 
#Configure your Domain Pricing (Setup  > [[Domains_Configuration|Domain Pricing]])
 
#Setup your Support Ticket Departments (Setup  > [[Support_Center|Support Departments]])
 
#Setup email piping so you can manage tickets using the WHMCS Support Desk - for full instructions on this please see the [[Email Piping]] article
 
#Ensure the WHMCS Cron Job is setup and configure automated tasks (Setup  > [[Automation Settings]])
 
#Place some test orders on your website to check everything works as expected
 
  
[[File:Videotutorial.png‎|center|link=https://www.whmcs.com/get-support/video-tutorials/|Watch Video Tutorial]]
+
# Perform the recommended [[Further Security Steps]].
 +
# Configure your general settings ('''Configuration (<i class="fa fa-wrench" aria-hidden="true"></i>) > System Settings > [[General Settings]]''').
 +
# Set up your payment gateways ('''Configuration (<i class="fa fa-wrench" aria-hidden="true"></i>) > [[Apps and Integrations|Apps & Integrations]]''').
 +
# Set up your products and services ('''Configuration (<i class="fa fa-wrench" aria-hidden="true"></i>) > System Settings > [[Products and Services|Products/Services]]''').
 +
# Configure your domain pricing ('''Configuration (<i class="fa fa-wrench" aria-hidden="true"></i>) > System Settings > [[Domain Pricing]]''').
 +
# Set up your support ticket departments ('''Configuration (<i class="fa fa-wrench" aria-hidden="true"></i>) > System Settings > [[Support Departments]]''').
 +
#Set up [[Email Piping|email piping]] to manage tickets using the WHMCS Support Desk.
 +
# Create and configure the WHMCS cron job and its automated tasks ('''Configuration (<i class="fa fa-wrench" aria-hidden="true"></i>) > System Settings > [[Automation Settings]]''').
 +
# Place some test orders on your website to check your setup.
  
For further guidance, you can watch video tutorials we have prepared for the above tasks @ [https://www.whmcs.com/get-support/video-tutorials/ www.whmcs.com/get-support/video-tutorials/]
+
For further guidance, watch our video tutorials: [https://youtube.com/whmcs https://youtube.com/whmcs]

Latest revision as of 14:43, 13 November 2023

Downloading WHMCS

Reseller Customers
If you obtained your license key from a reseller and you don't have a login for our members area, your reseller can provide the latest WHMCS files to you.

To download WHMCS:

  1. Visit https://download.whmcs.com/
  2. Click Download under the Full Release heading. This will be the latest release version.

Installing ionCube Loader®

WHMCS is encrypted using ionCube Loader to protect the source code. Most hosting providers compile ionCube support into the PHP build by default.

If you need to install ionCube on your server, see our Ioncube Installation Tutorial.

Creating a Database

WHMCS 8.8 and later support encrypted MySQL connections.

  • If your server requires encrypted MySQL connections, you cannot use the browser-based installation method below and instead must use the command-line method.
  • If your server has enabled encrypted connections but does not require them, you can use the browser-based installation method below and then update the configuration.php file after installation is complete.

For more information, see System Environment Guide and Enabling Encrypted MySQL Connections.

WHMCS uses a MySQL® database to store settings and data. You must create one during the installation process, or create one before you begin. For more information, see our System Environment Guide.

Database Privileges

WHMCS requires specific database privileges for installations, updates, and daily use.

For a complete list of the required privileges, see System Environment Guide.

Installing WHMCS

Watch the video tutorial for this feature  

To install WHMCS, you can use the following process:

  1. Unzip the contents of the .zip file to a folder on your computer.
  2. Rename the configuration.sample.php to configuration.php.
  3. Edit the configuration.php file, removing the following lines:
    // Prevent sample file execution. Remove from live configuration.
    return;
  4. Upload the entire whmcs folder to your website. If you experience problems, try uploading the folder in binary mode.
  5. Optionally, rename the folder (for example, billing).
    The administration area uses an admin folder. You cannot use admin as the installation folder name.
  6. Navigate to the installation script at http://www.example.com/whmcs/install/install.php to run the installation. If you see an ionCube-related error message, perform the ionCube steps above.
  7. Follow the instructions to install WHMCS, including setting file permissions (see below), entering your license key, and setting up your primary administrator account.
  8. Delete the installation folder from your web server and check the configuration.php file permissions again.

Required file and folder permissions

/configuration.php CHMOD 400 Readable
/attachments CHMOD 777 Writable
/downloads CHMOD 777 Writable
/templates_c CHMOD 777 Writable


The directory example permissions above may be overly permissive. I.E. world read/write permission might not be necessary or appropriate for your hosting environment:

  • For suPHP or PHP suEXEC, you will need to restrict directories further. If you use DSO as your PHP handler, you must use 644 permissions.
  • Limit access to only the account that owns the web server process. Make sure that no other system or user accounts can read your configuration file or modify any WHMCS-related files.

Need help with installation? Check our available servicesServices

Installing WHMCS In cPanel & WHM

cPanel, L.L.C. deprecated the Site Software feature in cPanel & WHM version 104. We recommend using the manual installation method above.

If you use cPanel & WHM, you can also install WHMCS directly from within the interface. To do this, see Configuring cPanel Site Software to Offer WHMCS and Installing WHMCS via cPanel Site Software.

Restricting Database Privileges

If you wish, once WHMCS is installed, you can remove certain privileges:

  • ALTER
  • CREATE
  • DROP
  • INDEX

Important
These privileges would need to be granted again when upgrading WHMCS, and when activating and deactivating modules.

Post Installation Suggested Steps

After you complete installation, we recommend that you configure WHMCS in the following order:

  1. Perform the recommended Further Security Steps.
  2. Configure your general settings (Configuration () > System Settings > General Settings).
  3. Set up your payment gateways (Configuration () > Apps & Integrations).
  4. Set up your products and services (Configuration () > System Settings > Products/Services).
  5. Configure your domain pricing (Configuration () > System Settings > Domain Pricing).
  6. Set up your support ticket departments (Configuration () > System Settings > Support Departments).
  7. Set up email piping to manage tickets using the WHMCS Support Desk.
  8. Create and configure the WHMCS cron job and its automated tasks (Configuration () > System Settings > Automation Settings).
  9. Place some test orders on your website to check your setup.

For further guidance, watch our video tutorials: https://youtube.com/whmcs