Installing Joomla on 5.0-Nano
Installing Joomla on 5-Nano Series |
Introduction
This step-by-step guide shows how to install Joomla on Uniform Server V5-Nano. Uniform Server is inherently portable, however Joomla uses absolute paths preventing true portability. This is easily resolved after installation. See portability section.
Copy the above to a USB memory stick and run on another PC. Remember that if the host PC is currently running another server, it will prevent UniServer from running. To resolve this situation, either stop the host servers or preferably install your UniServer on different ports by moving the server. Before installing Joomla it's worth reading how to move servers.
Pre-Installation
Note: There is no real need to create folders at A) and B). They are there to provide a reference point and make screen capture a little bit easier.
Install Uniform server
Download Joomla
Copy files to Uniform Server
|
Create a Joomla Database
Creating the Joomla database is straight forward. Note that tables are automatically inserted during installation.
|
Note:
- You can start phpMyAdmin from Apanel; start Apanel by typing http://localhost/apanel/ into your browser address bar.
- From Apanel click on the phpMyAdmin link. (left menu under tools)
Installation
To start installation process type the following http://localhost/joomla/ into your browser and follow the instructions.
Note: If you moved the server remember to type the port number. E.g., to start the installation process, type the following http://localhost:82/joomla/ into your browser and follow the instructions.
There are seven pages to the process as follows:
- Language
- Pre-installation Check
- License
- Database
- FTP Configuration
- Configuration
- Finish
For completeness, I have reproduced the steps and added a few extra notes.
Language
You are presented with a list of languages, the default selection is English.
Select your required language and Click Next (top right)
Pre-installation Check
Uniform Server passes the pre-installation check, Click Next
The following are checked: |
|
Recommended Settings: |
|
License
After reading the GNU General Public License: - Click Next
Database
I have shown Uniform Server's default password (MySQL password = root) and database name created above (joomla).
If you are going to put the server on-line change the MySQL password.
Database Type: | mysql | - Do not change |
Host Name: | localhost | - If you moved servers add port number, e.g., localhost:3308 |
Username: | root | - Do not change |
Password: | root | - Use the MySQL password you set using Apanel |
Database Name: | joomla | - Use the name you set during pre-configuration |
Click Next | - That's all the database info required, hence continue |
Note: You do not need to change any of the advanced features.
FTP Configuration
Click Next
Note: For a Windows Operating System, the FTP layer is not required.
Configuration
Site configuration is straightforward, I have shown example entries in bold just substitute for your real data.
Site Name: | UniServer TEST | - Use your real site name |
Your E-mail: | fred@fred.com | - Use your real email address |
Admin Password: | root66 | - Use your real password |
Confirm Admin Password: | root66 | - Enter it again |
Install Default Sample Data | Click Install button | - Optional |
Load Migration Script: | Not required | - No action |
Click Next | - That completes the site information |
Finish
That essentially completes the installation. You will receive the following warning:
PLEASE REMEMBER TO COMPLETELY REMOVE THE INSTALLATION DIRECTORY. You will not be able to proceed beyond this point until the installation directory has been removed. This is a security feature of Joomla!.
Delete the folder: UniServer\udrive\www\joomla\installation
Click Either Site or Admin top right
General Information
- Admin login name: admin
- Admin password: root66 - One you set above
- Site address: http://localhost/joomla/
- Admin address: http://localhost/joomla/administrator/
Note: If you moved the servers remember to add the new port number e.g.
- Site address: http://localhost:82/joomla/
- Admin address: http://localhost:82/joomla/administrator/
Portability
Joomla’s configuration file UniServer\www\joomla\configuration.php contains various variables defined during installation. Amongst these are two variables $log_path and $tmp_path containing fixed paths. Fixed paths are not consistent with portability these variables require converting to dynamic fixed paths.
Joomla’s configuration file is a list of variables contained in a class named Jconfig to set these variables dynamically we use the class constructor as follows:
//=== Constructor JConfig for Joomla class =================================== function JConfig() { // === Set base path ====================================================== $path_array = explode("www", dirname( __FILE__ )); // Split pat at www $base = "$path_array[0]"; // absolute path to ..UniServer/ // ================================================== End Set base path === // Set class variables. $this->log_path = $base."www\\joomla\\logs"; // Create new paths to $this->tmp_path = $base."www\\joomla\\tmp"; // folders logs and temp } //=============================== END Constructor JConfig for Joomla class === |
Add this to the end of the class (just above the last curly brace) hence when the class is instantiated new paths are calculated and appropriate variables updated.
Advantages of this method, servers can be run from any location.
Move Servers
One of Uniform Server’s unique features is the capability to run more than one complete server on the same PC. When running a server from a USB memory stick you can use this to great advantage and prevent server clashes. You will have noticed UniTray’s icon displays one (meaning standard ports). Moving UniServer increments this digit and so on for each server move. In reality it’s not just a port change but a complete server update. Running server status displays the server characteristics.
Move Servers:
- Assumes a new extracted server (see note 1)
- Stop all running Uniform Servers
- Start UniTray; in folder UniServer double click on Start.exe - tray icon created.
- Move servers, Left click tray icon > Advanced > click Move Servers multi-server operation.
- In the pop-up window at all prompts press enter to accept defaults.
- The tray icon will display 2, if you already use a server with this number repeat steps 4 and 5. Each server must have a unique number.
- After moving the servers you can now install Joomla as explained above.
- However before proceeding you need to use the new server ports for installation.
- To find these: Left click tray icon > Server Status
I moved the servers to icon 3 hence Apache port = 82 and MySQL port = 3308
To start installation: type http://localhost:82/joomla/ into your browser
Database Configuration host name becomes: localhost:3308
After installation page access requires the addition of a port number as shown
- Site address: http://localhost:82/joomla/
- Admin address: http://localhost:82/joomla/administrator/
Note 1:
If you have already installed Joomla on UniServer V5-Nano and want to move the servers, it is possible.
- Follow steps 2-6 as above
- Edit file UniServer\www\joomla\configuration.php
- Locate line (15)
Change line: var $host = 'localhost';
To: var $host = 'localhost:3308'; - Save file.
Using the port number that matches your server, start the servers. Pages are accessible as mentioned above. Just remember to use the port number that matches your server.
Note 2:
The plugin V55_Joomla_1_5_15a.exe automatically tracks the MySQL port hence no need to manually configure this when moving the servers. Plugin uses the following constructor:
//=== Constructor JConfig for Joomla class =================================== function JConfig() { // === Set base path ========================================================== $path_array = explode("www", dirname( __FILE__ )); // Split pat at www $base = "$path_array[0]"; // absolute path to ..UniServer/ // ====================================================== End Set base path === // === Get MYSQL port ========================================================= // Use port from configuration file - because user can change this file $file_conf = $base.'usr\\local\\mysql\\my.ini'; // Config file if ($filearray=file($file_conf)) { // read file into array foreach ($filearray as $txt) { // scan array for port if(preg_match("/^\s*port\s*=\s*(\d+)/", $txt,$match)){ // check save matches $mysql_port = $match[1]; // match found save port number break; // give up nothing else to do } } } else { // failed to read file echo "Cannot read the file"; } // ===================================================== END Get MySQL Port === // // Set class variables. $this->host = "localhost:$mysql_port"; // Add port to localhost $this->log_path = $base."www\\joomla\\logs"; // Create new paths to $this->tmp_path = $base."www\\joomla\\tmp"; // folders logs and temp } //=============================== END Constructor JConfig for Joomla class === |
Plugin
The above instructions are generic allowing you to install the latest version of Joomla.
If you prefer a click and go solution, go to SourceForge
- Under Plugins
- Navigate to sub-folder Uniform Server 5-Nano Plugins
- Download file V55_Joomla_1_5_15a.exe
Save this to folder UniServer. To install it, double click on the file. Joomla is pre-configured and ready to go. Check out the read me file for latest information.
Note: This plugin is intended to quickly get Joomla up and running allowing you to explore the software. If you intend running a production server, delete the folders installed and perform a manual install. This allows you to tailor Joomla and include any missing modules.
MySQL Security
The above installation guide and associated downloadable plugin are intended to get the application up and running purely for testing.
If you are intending to put the application on line, make sure to read any security advice provided with the application and check the provider's web site.
More impotently the above installation is an extreme security risk if put online as is. It's imperative you secure the MySQL server before putting your servers online.
Please read the following page MySQL Security and restrict privileges to any user that has connection access to your server.
Conclusion
From the above you have seen how easy it is to install Joomla and make it fully portable.
What may not be apparent from the above is the reason for using icon 3 for Joomla. I have a main server that runs on standard ports, hence icon 1 is in use. I installed MediaWiki on a USB memory stick which accounts for icon 2. The next free icon was 3 so I used that.
While writing this I currently have three independent Uniform Servers running on the same PC. The main server is running as a service and the other two as a standard program. I only mention this to give you some idea of Uniform Server’s capabilities and flexibility.
Related links:
How to install Joomla on Uniform Server 3.5-Apollo
Joomla (Version 1.0.13 ) portability on Uniform Server 3.5-Apollo.