Book Image

Implementing SugarCRM 5.x

Book Image

Implementing SugarCRM 5.x

Overview of this book

SugarCRM is a popular customer relationship management system. It is an ideal way for small-medium business to try out a CRM system without committing large sums of money. Although SugarCRM is carefully designed for ease of use, attaining measurable business gains requires careful planning and research. This book will give you all the information you need to start using this powerful CRM system. It is the definitive guide to implementing SugarCRM. Whether you are wondering exactly what benefits CRM can bring or you have already learned about CRM systems but have yet to implement one or you're working with SugarCRM already, this book will show you how to get maximum benefit from this exciting product. It demonstrates how to install SugarCRM and also how to get the most out of it by customizing it and integrating CRM into your organization as per your needs. Focused on the needs of the enterprise, this book provides a solution-driven approach for both business and IT specialists to get the most from this powerful and popular Open Source application. It begins with a general discussion about CRM. You will then learn the benefits of such systems, and then explore SugarCRM and its unique value. You will then go through the guidelines for installing and making deployment selections that are set out alongside information for identifying, planning, and applying customizations. Training guidelines and ongoing administrative tasks will be discussed as you progress further into the book. A brief overview of SugarCRM 6.0 is provided at the end of the book.
Table of Contents (19 chapters)
Implementing SugarCRM 5.x
Credits
About the Authors
About the Reviewer
Preface

Installing SugarCRM using MySQL and Apache


Although the various editions of the Windows operating system include a built-in web server (IIS), some users prefer to use Apache web server. Apache is a widely used open source web server and can be downloaded from http://www.apache.org. Let us go through the process of installing it on a Windows system.

To simplify the process, it is recommended that you download the MSI installer package. Further to this, you should download the most recent stable version, usually identified by the moniker "best available version." Further, you should consider downloading the version that includes SSL support, in case you have a need for it in the future.

In addition to Apache, we will also need to install PHP. Note that it will be necessary for you to install PHP even if you choose to instead use IIS, as PHP is not an embedded feature of your web server. You can download the necessary installation files for PHP from http://www.php.net.

Before you download PHP, verify that the version you have selected is supported for use by SugarCRM. A complete list of supported versions can be found on the official system requirements web page, on the SugarCRM website, located at the following URL:

http://www.sugarcrm.com/crm/products/supported-platforms.html

Likewise, you will need to download and install a supported version of MySQL. You can download a copy from http://dev.mysql.com.

The remainder of this section will assume that you have already downloaded the corresponding MSI installation packages for Apache, PHP, and MySQL.

Installing Apache web server

To install Apache, double-click on the corresponding MSI package that you previously downloaded. It should present the following screen:

Proceed through the installation wizard normally, and enter your information into the screen that looks like the following:

If you do not have a domain, you can use example.com. Furthermore, you should ensure that the for All Users option is selected in order to install it as a service. Click on Next to proceed. Continue through the remainder of the wizard, accepting the default options along the way.

Once the installation process completes, the installer will attempt to start Apache. If you have IIS installed and running on the same computer (or other applications, such as Skype), you may receive an error message that a port is already in use. To resolve this problem, you either need to shut down IIS, Skype, or other applications and then start Apache, or alternatively, you can change the port number to be used by Apache from the default number of 80, to another value that is not in use.

To change the port number to be used by Apache, select Start | All Programs | Apache HTTP Server 2.2 | Configure Apache Server | Edit Apache httpd.conf configuration file. Search for the line that reads Listen 80, and change 80 to a different value. Save your changes and then attempt to start Apache again by selecting Start | All Programs | Apache HTTP Server 2.2 | Control Apache Server | Start. Note that you may also need to adjust the SSL port (port 443 by default).

Installing PHP

After successfully installing Apache, proceed to install PHP. To install PHP, launch the corresponding MSI install package that you previously downloaded.

Click through the first few screens on the installation wizard until you reach the following screen:

Verify that you have selected Apache 2.2.x Module on the preceding screen, and then click on Next to continue. You will then be presented with the following screen:

Enter the path to the Apache configuration files. By default, this path should be set to C:\Program Files\Apache Software Foundation\Apache2.2\conf\ as shown in the preceding screenshot. If you are unsure, search your system for the file named httpd.conf, and specify the path that contains said file.

SugarCRM requires several PHP extensions in order to function properly. The installation wizard allows you to define which extensions are to be installed. However, for the purposes of our example, we will simplify the process and simply choose to install all components by selecting Entire feature will be installed on local hard drive on the PHP node on the following image:

Proceed to complete the installation process and restart Apache. To verify that PHP is operational, create a file named test.php with the following content:

<?php
Phpinfo();
?>

Place the file at the following location:

C:\Program Files\Apache Software Foundation\Apache2.2\htdocs and attempt to open it through your web browser by navigating to http://localhost/test.php (you may need to adjust your URL to include a custom port number). If everything is working properly, you should see a screen with the PHP version number and other pertinent information.

Now that you have a working Apache and PHP installation, you need to install the database component.

Installing MySQL

As with the other components, initiate the installation process by launching the corresponding MSI package that you previously downloaded. The MySQL installation wizard will automatically appear as shown in the following screenshot:

Proceed through the wizard, choosing the default options when prompted. Upon completion, you will have the option to configure your server, as illustrated in the next screenshot:

Verify that Configure the MySQL Server now is selected and click on Finish.

A series of screens will now be presented, allowing you to make modifications to the server configuration. The following screenshot shows the server instance configuration screen:

Select Standard Configuration at the MySQL Server Instance Configuration screen and click on Next to proceed.

On the screen that follows, accept the default option to install as a service and proceed. Provide a password for your root user (that is, default administrator level user) and continue through to the end.

All the components required for SugarCRM should now be installed and operational. Do not attempt to install SugarCRM if any of these items are malfunctioning as it is likely that this will cause problems within SugarCRM. Attempts at installing on misconfigured or malfunctioning stacks usually result in lost time and frustration.

Finally, you can now install SugarCRM.

Installing SugarCRM Community Edition

The installation process that we will follow assumes that you have downloaded SugarCRM by clicking on the Download now button mentioned at the beginning of this chapter. Once you have clicked on Download now, carry out the following steps:

  • Unzip the contents of the installation package to the folder named C:\Program Files\Apache Software Foundation\Apache2.2\htdocs.

  • You should now have a folder named C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\SugarCE-Full-5.5.1. Rename SugarCE-Full-5.5.1 to sugarcrm.

The remainder of the installation process will be performed within your web browser.

To begin the installation process, point your web browser to http://<ipaddress of server>/sugarcrm

If you intend to allow access to users from outside of your LAN or internal network, you should use the public or internet facing IP address that is associated with the server. If your intention is to restrict access to only those users who are on your LAN or internal network, you should use the IP address that all the intended users can utilize to connect to the server. Using 127.0.0.1 or localhost in place of either will result in access being limited to the server only.

You may use the ipconfig and hostname commands to determine the IP or server address respectively. To execute these commands, open a command window by selecting Start and then typing cmd and clicking on OK. Type the command into the window that appears. Consult your network or DNS administrator if you require assistance for determining the public IP address as it may require firewall or other network modifications.

Your web browser should automatically bring you to the installation wizard welcome page as shown in the following screenshot:

The installation procedure is as follows:

  • Welcome screen: Click on the Next button to continue to the license acceptance page, as depicted in the following screenshot:

  • License screen: Click on I Accept if you agree to the terms, then click on Next to proceed.

  • System check screen: Next you see the SugarCRM system check screen. The SugarCRM installer checks several aspects of the installation environment, and reports their status to you on this screen. If something is not properly configured within your PHP installation, you will see a screen similar to the following image. Those errors need to be addressed before you can continue. Common issues include the following:

    • Missing or disabled PHP extensions

    • Incorrect file permissions

    • Improper PHP parameters

  • Installation options: Once the errors are corrected (or if none are identified), you will be prompted to select the installation method. Leave it set to the default of Typical, and click on Next to continue.

  • Database type: Unless you added support for MS-SQL, your only choice should be MySQL (MySQLi detected) as shown in the following screenshot. Click on Next to proceed.

  • Database configuration screen: Enter the parameters required to connect to your MySQL Server. You should enter sugarcrm for the Database Name, localhost for the Host Name, root for the Database Administrator Username, and provide the Database Admin Password value. The only other setting you may wish to change is the option to Populate Database with Demo Data? These are shown in the following screenshot:

Note

IMPORTANT: The MySQL user root is the default MySQL administrator and has full access to all database operations. Its use is not generally recommended for production systems, as it poses a security risk. To strengthen security, it is recommended that you create a MySQL user for exclusive use by SugarCRM. Details on creating MySQL users and other MySQL administrative operations can be found at the following URL:

http://dev.mysql.com/doc/refman/5.1/en/index.html

  • Site configuration screen: You must provide a password for the default user admin, as shown in the following screenshot. Make sure to store this password in a safe place.

  • Locale settings screen: You can also fine tune some default user preferences as part of the installation process. These include date and time format and other settings as seen in the following image:

  • Confirmation screen: Finally, the installer will present a summary screen including a number of the settings you defined earlier in the wizard. If you need to make a change before installing, this is your last opportunity to do so. You may use the Back button to apply changes or click on Install to commit the installation. The confirmation screen is shown in the following screenshot:

The installation process will begin immediately after you click on the Finish button. The process normally takes just a few minutes, but may take a bit longer if you chose to install the demo data.

Once completed, you should see a screen similar to the following:

Click on Next to continue, and you will be prompted to register. It is not required, but it does help SugarCRM, so consider doing it.

Click on Next once you are finished with the registration screen.

Congratulations! You have now successfully installed SugarCRM on your Windows server!

You should see a login screen, as shown in the preceding screenshot. You can log in (as a SugarCRM user) using the username admin and using the password that you defined during the installation process. To allow other users access to the system, simply provide them with the URL displayed in your web browser while at the SugarCRM login page. Of course, assuming that you have already created their usernames and passwords.

Installing SugarCRM with Microsoft SQL server

Using Microsoft SQL Server (MS-SQL) for your SugarCRM installation is no different than using MySQL. The main difference is that during the installation, you will need to choose Microsoft SQL Server for your database type, instead of the default MySQLi.

However, before you get to that point, you will want to make sure that you have a supported version of MS-SQL Server available, and that it is also functioning. If you require assistance for installing MS-SQL, you should check out the documentation on the Microsoft website, located at http://msdn.microsoft.com/en-us/library/ms143516(SQL.90).aspx

There are a couple of important notes to keep in mind regarding its use. Perhaps the most important note is to ensure that the MS-SQL server you wish to use is configured to support the use of Mixed Mode authentication. Failure to do will needlessly complicate the installation process, as you will not be able to utilize the default process of simply specifying a database administrator username and password when defining the database configuration parameters.

Secondly, your installation of PHP may not have the MS-SQL extension enabled. If the SugarCRM installation wizard does not allow you to choose MS-SQL as an option, chances are that the MS-SQL extension is not enabled or installed. If you encounter this scenario, check your PHP.INI, and verify that it contains the following line:

ext=php_mssql.dll

If it is missing, add it, save your changes, and then restart your web service and try again. If you encounter errors indicating that the extension cannot be found, it indicates that support for MS-SQL was not installed as part of your PHP installation. To resolve the problem, either reinstall PHP and make sure to install the MS-SQL extension, or locate the necessary DLL files and apply them to your PHP installation folder.

To restart your web service, select Start | Run. Type services.msc and click on OK. In the list that is displayed, right-click either on Apache2.2 or on World Wide Web Publishing (depending on whether you are using Apache or IIS for your web server), and choose Restart.

Locating the DLLs can prove a little trickier. A good starting spot is the main PHP website located at http://www.php.net/, but it may also require some general searching of the internet.

Installing SugarCRM on Internet Information Services (IIS)

IIS may or may not already be installed on your target server. One quick way to check whether it is or is not installed is to select Start | Control Panel | Administrative Tools. If you see an option for administering Internet Information Services, you are all set. If you do not see anything relating to IIS, you will need to install it through the Add/Remove Programs tool.

To install IIS, select Start | Control Panel | Add/Remove Programs and click on Add/Remove Windows Components. Windows will present a catalog of components that can be added to your installation of Windows. Select Internet Information Services and proceed with the remainder of the wizard until it finishes installing IIS for you.

Perhaps the biggest challenge involved with installing SugarCRM on IIS is configuring PHP.

In general, installing PHP will involve following the same instructions as those outlined earlier in this chapter in the section titled Installing PHP. However, you will want to choose IIS FastCGI at the Web Server Setup screen of the installation wizard. You may have to use the IIS ISAPI Module or IIS CGI option if you are using a version of IIS older than 7.0. Additional help on this topic can be found at the IIS PHP website, located at the following URL: http://php.iis.net/

As with Apache, it is important to verify that PHP is operational and properly configured before attempting to install SugarCRM.

Once you have confirmed that PHP is operational, you are ready to start the installation process, but before you can do that, you must place the SugarCRM files in their proper location so that IIS is aware of them.

The section titled Installing SugarCRM Community Edition found earlier in this chapter, provides instructions on extraction and placement of the SugarCRM installation files as it relates to Apache web server. In it, you are asked to place your files in a folder named C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\sugarcrm.

As IIS uses a different folder structure for its files, you will place the files in the following folder:

C:\Inetpub\wwwroot\sugarcrm.

After doing so, you will be able to follow the same installation instructions described earlier in this chapter.