WAMP and SugarCRM Setup on a Windows Machine

sugarcrmdevelopers —  July 9, 2012

Editor’s Note: We at Sugar generally recommend using a pure Windows stack of IIS and SQL Server on Windows, but for those of you on a Windows machine using Sugar for local development, WAMP is a very easy to get going option. Do also note you can install Sugar using the Web Platform installer, which offers an easy to use 1-click install.

Instructions for setting up WAMP and then SugarCRM on a standard Windows machine, including Windows Vista or Windows 7 as well as Windows Server 2003, 2005, 2008, etc. SugarCRM is nice enough to run anywhere PHP runs, and PHP runs easily with the WAMP packaged server. I’ve done deployments like this a few times now, and have included some notes for specific use cases.

  • WAMP
    • Download WAMP from www.wampserver.com. WAMP is a for-windows package comprised of Apache Web Server with PHP and the MySQL Database Server. Versions within the system vary over time, but currently PHP version 5.3.10 is included
    • Install WAMP using default settings, which will be C:wamp and the web root will be C:wampwww.
    • If no other web service is running, Apache will start automatically.
    • Coincide with IIS or Another Server if a service is already using port 80, you’ll need to adjust Apache’s configuration to use a different port (e.g. 8080). To do this, click the WAMP Server icon in the system tray, then Apache, and httpd.conf. Look for the configuration parameter “Listen” and “ServerName” and adjust as desired.
    • Ensure the Apache Web Service starts up, in the Windows Services Control Panel (services.msc) search for “wampapache,” right-click and hit Properties. Adjust the Startup Type to “Automatic.”
    • Setting up Outside Access if this is a production service, you’ll need to configure Apache to accept incoming connections. To do this, click the WAMP Server icon in the system tray, then Apache, and httpd.conf. Look for virtual host directives like <Directory /> and <Directory “c:/wamp/www/”>. In these, comment-out the phrase “deny from all” and include the phrase “accept from all”
    • Ditching MySQL If you’re using a web app, including SugarCRM, with a Microsoft SQL Server back-end instead of MySQL, you’ll want to go to Windows Services Control Panel and disable the wampmysql service.
    • SugarCRM
      • Download SugarCRM from www.sugarcrm.com, be sure to get the latest stable version. If you’ve purchased SugarCRM, be sure to log in and grab a Professional Version, and not the Community Edition.
      • Extract the ZIP file into C:wampwww
      • I like to rename the default directory to sugarcrm, so that the instance is at C:wampwwwsugarcrm. To me, the version number in the directory is silly and won’t be accurate in a few months when you upgrade.
      • If you are going to use Microsoft SQL Server for your SugarCRM backend, you may need a different version of PHP. The compiled PHP of version 5.3.10 included in WAMP does not have the MSSQL extension required. Instead, download PHP Version 5.2.9-2 from the WAMP website and install this. Once installed, click the Wamp Server icon in the system tray, go to PHP, Version and select 5.2.9-2.
      • Recommended PHP configuration changes for SugarCRM:
        • Enable these modules: php_zip, php_curl, php_mssql (if using Microsoft SQL Server), php_imap and php_openssl
        • Click WAMP Server icon in the system tray, PHP and php.ini. Adjust post_max_size to “20M” and upload_max_filesize to “20M”
        • After changing php.ini settings, you’ll need to restart the Apache service before these changes take effect.
  • Open your preferred web browser (Firefox!) to the SugarCRM instance (e.g. http://localhost/sugarcrm/) and follow on-screen prompts to install SugarCRM.