1. Upload your Joomla folder (Windows PC) to SME Server /opt/joomla folder using WinSCP. This means overwriting files on /opt/joomla if there are. No need to include installation folder if it does exist.
  2. Putty to the server and issue these commands:
    chown -R www:www /opt/joomla/
    cd /opt/joomla
    find . –type f –exec chmod 644 {} \;
    find . –type d –exec chmod 755 {} \;
  3. Export your database & import it to the server using PHPmyAdmin.
  4. Login to your Joomla back-end (administrator page) with your login username & password (of Windows setup). If you can’t login and keeps receiving an error such as Call to a member function login() on a non-object in /opt/joomla/administrator/components/com_login/admin.login.php, do the following:
    • Upload the installation folder to the server.
    • Drop all tables of your joomla database on the server.
    • Re-run the joomla installation.
    • Try to login on your joomla admin page using your newly setup login details.
    • If successful, import your database again.
  5. Visit your Joomla front-end.
  6. Make sure that the property of configuration.php is 444.

How to place joomla on /opt/ folder

  1. Create a template
    nano /etc/e-smith/templates/etc/httpd/conf/httpd.conf/80OptDomainJoomla
  2. Enter the following code:
    my $status = $joomla{'status'} || "disabled";
    return " # joomla-status is disabled.\n"
    unless $status eq 'enabled';

    my $domain = $joomla{'domain'} || "disabled";
    return " # no hostname or domain for joomla defined\n"
    if $domain eq 'disabled';
    my $DocRoot = "/opt/joomla"; $OUT = ""; $OUT .= "\n"; $OUT .= "# Redirect an existing hostname or domain to $DocRoot.\n";
    $OUT .= "\n";
    $OUT .= " ServerName $domain\n";
    $OUT .= " DocumentRoot $DocRoot\n";
    $OUT .= "\n";
    $OUT .= "\n";
    $OUT .= " ServerName $domain\n";
    $OUT .= " DocumentRoot $DocRoot\n";
    $OUT .= " SSLEngine on\n";
    $OUT .= "\n";
  3. Set status to enabled & the domain to www.itropics.net
    config set joomla service
    config setprop joomla status enabled
    config setprop joomla domain www.itropics.net
    expand-template /etc/httpd/conf/httpd.conf
    svc -t /service/httpd-e-smith
    svc -t /service/httpd-admin

    Note: config set joomla service line command is important. Without this, succeeding command will not work. Without this, your httpd.conf file will only show “# joomla-status is disabled”

  4. Create an index.php file with the code below then upload it on /home/e-smith/files/ibays/Primary/html
    Header( "HTTP/1.1 301 Moved Permanently" );
    Header( "Location: http://www.itropics.net" );

    Make sure to delete the existing index.html on the Primary/html folder.