1. Fabrik 3.8 has been released. As usual, we strongly recommend that you backup your site (using Akeeba) before upgrading. Report any issues in the forums, we will answer promptly.

Setting up a development server

Dec 10, 2013
Setting up a development server

  • Introduction (top)


    The purpose of a development server is to test new configurations, software upgrades and features before they are released on your live site.

    You can set up a development server locally on your own computer or create a 'sandbox' environment that is accessible through either a subdirectory of your live site, a subdomain of your live site, or another server.

    One possible workflow is:

    • Work on local development server
    • Move to sandbox when ready to test online
    • Move to live site
    This article describes all of the steps involved in this process.

    Setting Up A Local Development Server (top)


    Manual Set Up (top)

    To set up a development server, you generally need four components:

    • Apache - an open source web sever
    • MySQL - a SQL database management system
    • PHP - a general purpose scripting language
    • phpMyAdmin - a tool that handles the administration of MySQL
    • Optional: FileZilla Server - an FTP server
    • Optional: An FTP Client
    You can either install these components individually and manually or you can install an 'AMP solution stack' such as XAMPP, WampServer or MAMP.

    You can learn how to install these components individually by following this tutorial:

    http://www.lynda.com/MySQL-5-tutorials/installing-apache-mysql-and-php/77958-2.html

    Otherwise, please see the section below on how to install XAMPP.

    Installing FileZilla Server (top)

    Optional: XAMPP comes with FIleZIlla but if you choose to install the individual componenents, you may also like to install FileZilla Server after completing the steps above.

    • Download Filezilla Server http://filezilla-project.org/download.php?type=server
    • Double click the exe file
    • Click 'I Agree' if you agree to the terms
    • You can leave the setting at 'Standard' with default components selected and click 'Next'
    • You can leave install path as default and click 'Next'
    • You can leave setting as 'Install as service, started with Windows (default)' with port 14147 defined and selection 'Start server after setup completes' checked and click 'Next'.
    • You can leave setting as 'Start if user logs on, apply to all users (default)' and 'Start Interface after setup completes' and click 'Install'.
    • Click 'Close' and the 'Connect to server' box will pop up, leave all settings as default ie 'Server Address: 127.0.0.1', 'Port: 14147' and 'Administration password: [blank]' and click 'OK'.
    • You will be logged in to your server
    • Next, you need to create a user that can login to your server.
    • Go to Edit > Users > Add and enter a username - write this down.
    • Check the 'Password' box and enter your password - write this down.
    • Go to Shared Folders > Add and select your site root ie C:\apache\htdocs and click 'OK'.
    Connecting To Your Server via FTP (top)

    To connect to your server via FTP, start your FTP client of choice and enter the username/password combination you defined above with the hostname being 'localhost' with port number your default or try 21 if you have any problems.

    You will then be able to FTP files to your local development site as you normally would with any other 'online' server.

    Installing XAMPP (top)

    You can follow the instructions in the preview of the book 'PHP and MySQL 24-Hour Trainer' at google books to set up XAMPP on your system (see pages 3-6).

    Installing Joomla (top)

    Download Joomla

    Start XAMPP and FileZilla Correctly

    Make sure XAMPP is not running (if it is, go to the 'xampp-control.exe' interface and stop MySQL and then Apache and then click 'Exit')

    • Open the XAMMP control panel' application
    • Ensure that apache and mySQL are running
    Start up your FTP program

    Create a new connection with these details:

    • host name: localhost
    • user name: newuser
    • password: wampp
    • port number: leave as default or try 21
    • login
    • create a directory for your local site eg 'mytestsite'
    • ftp your extracted joomla files to this directory
    • navigate to the installation folder eg http://localhost/mytestsite/installation/
    • start installation steps
    • when you arrive at database configuration, enter this information:
      • Database Type: Mysqli
      • Host Name: localhost
      • Username: root
      • Password: [whatever password you entered in the first part of this tutorial]
      • Database Name: test
    • Continue with installation
    • You can enable ftp layer with the username/password settings 'newuser', 'wampp'.
      Set enable ftp layer to No, otherwise later you may get this error when trying to install Fabrik:
    JFTP: :store: Bad response
    Warning: Failed to move file!
    • Enter your other details and admin password (write this down somewhere!) and install sample data if you wish.
    • Delete installation directory as prompted.
    • Browse to your site or the admin section.
    Installing Fabrik (top)
    Updating From GitHub (top)

    Update from GitHub

    Setting Up A Sandbox Site (top)


    Once you have made changes to your local site that you would like to test, you may wish to move it to a sandbox site using a tool like Akeeba Backup.

    Following the instructions from Akeeba Backup, there are four stages to this process:
    • Installing Akeeba Backup
    • Making A Backup
    • Downloading Archives
    • Restoring Your Backup
    • NOTE: Edit and save the default site connection in the Fabrik Connections tab to force it to pick up the details from the Joomla dev site database (otherwise Fabrik will try to connect to the live database).
    You can watch these steps here

    Moving Your Development Site To Your Live Site (top)


    • Backup your site.
    • Using PhpMyAdmin or a similar database management tool, export, as a zip file, all of your #__fabrik* tables and any tables your Fabrik lists use to store data in
    • Import to your live site using your database utility of choice (eg phpMyAdmin, Navicat).
    • Copy any file based changes (eg templates, plugin script files etc).
    • NOTE: Edit and save the default site connection in the Fabrik Connections tab to force it to pick up the details from the Joomla live site database (otherwise Fabrik will try to connect to the dev database).
    If you've added elements to existing data tables, you'll need to do an "Update Database" on the Forms tab for any forms that have new elements. This basically does a sanity check of the element metadata against the underlying data tables, and creates any missing fields. If you've created any new data tables on the dev site, you'll need to import those along with the Fabrik metadata tables.