Installing Xoops on 5.0-Nano: Difference between revisions
New page: <span id="top"></span> {| cellpadding="2" |__TOC__||'''Installing Xoops on 5.0-Nano''' |} '''Introduction''' This step-by-step guide shows how to install Xoops on Uniform Server V5.0-Nano... |
m Text replace - "projects/uniformserver" to "projects/miniserver" |
||
(8 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
<span id="top"></span> | <span id="top"></span> | ||
{| cellpadding="2" | {| cellpadding="2" | ||
|__TOC__||'''Installing Xoops on 5 | |__TOC__||'''Installing Xoops on 5-Nano Series''' | ||
|} | |} | ||
'''Introduction''' | '''Introduction''' | ||
This step-by-step guide shows how to install Xoops on Uniform Server V5 | This step-by-step guide shows how to install Xoops on Uniform Server V5-Nano and resolve a portability issue. | ||
After installation you can optionally move the servers to non-standard ports allowing | After installation you can optionally move the servers to non-standard ports allowing UniServer to coexist with a server running on standard ports. | ||
== Pre-Installation == | == Pre-Installation == | ||
Line 16: | Line 16: | ||
# '''A)''' Create a new folder named '''xoops_b''' (Can be any name) | # '''A)''' Create a new folder named '''xoops_b''' (Can be any name) | ||
# Extract a new copy of Uniform Server V5 | # Extract a new copy of Uniform Server V5-Nano to this folder | ||
'''''Download Xoops''''' | '''''Download Xoops''''' | ||
<ol start="4"> | <ol start="4"> | ||
<li> '''B)''' Create a new folder '''xoops_a''' (Can be any name its only a temporary folder)</li> | <li> '''B)''' Create a new folder '''xoops_a''' (Can be any name its only a temporary folder)</li> | ||
<li> Download the latest version (xoops-2. | <li> Download the latest version (xoops-2.4.2.zip) of Xoops from [http://www.xoops.org/modules/core/ www.xoops.org]</li> | ||
<li> Copy the file dowloaded ('''xoops-2. | <li> Copy the file dowloaded ('''xoops-2.4.2.zip''') to '''xoops_a'''</li> | ||
<li> Unzip '''xoops-2. | <li> Unzip '''xoops-2.4.2.zip''' into this folder.</li> | ||
</ol> | </ol> | ||
'''''Copy files to Uniform Server''''' | '''''Copy files to Uniform Server''''' | ||
<ol start="8"> | <ol start="8"> | ||
<li> '''C)''' Expand the folder '''xoops-2. | <li> '''C)''' Expand the folder '''xoops-2.4.2'''</li> | ||
<li> '''D)''' Copy folder '''htdocs''' to Uniform Servers's root folder '''www'''</li> | <li> '''D)''' Copy folder '''htdocs''' to Uniform Servers's root folder '''www'''</li> | ||
<li> '''E)''' Rename the copied folder '''htdocs''' to '''xoops''' (can be any name)</li> | <li> '''E)''' Rename the copied folder '''htdocs''' to '''xoops''' (can be any name)</li> | ||
Line 50: | Line 50: | ||
:*xoops_data/caches/smarty_compile/ | :*xoops_data/caches/smarty_compile/ | ||
| | | | ||
[[ | [[Image:Nano_xoops_1.gif]] | ||
|} | |} | ||
'''''[[#top | Top]]''''' | '''''[[#top | Top]]''''' | ||
== | == Create a Xoops Database == | ||
# Start | Creating the Xoops database is straight forward, tables are automatically inserted during installation | ||
# | |||
# Start Uniform Server | |||
# Left click tray icon > click '''phpMyAdmin''' - This opens phpMyAdmin in your browser | |||
# We want to create a new database. Name it '''xoops''' (or something easy to remember if you change name make sure you use this name during installation.) | |||
# Click on '''Create''' to create the database | |||
'''''Note'':''' | |||
* You can start phpMyAdmin from Apanel, start Apanel by typing <nowiki>http://localhost/apanel/</nowiki> into your browser address bar. | |||
* From Apanel click on the '''phpMyAdmin''' link. (left menu under tools) | |||
'''''[[#top | Top]]''''' | '''''[[#top | Top]]''''' | ||
== Install Xoops == | == Install Xoops == | ||
# | # Assumes Uniform Server is running. Xoops installation is mostly a click through exercise. | ||
# Type the following into a browser: '''<nowiki>http://localhost/xoops/</nowiki>''' | # Type the following into a browser: '''<nowiki>http://localhost/xoops/</nowiki>''' | ||
# Choose your language: Click '''Next''' | # Choose your language: Click '''Next''' | ||
Line 72: | Line 80: | ||
::* Change the path from: '''C:/xoops_b/UniServer/www/xoops/xoops_data''' to '''C:/xoops_b/UniServer/home/xoops_data'''<br>(Note when you click in the next text box the above path will be found) | ::* Change the path from: '''C:/xoops_b/UniServer/www/xoops/xoops_data''' to '''C:/xoops_b/UniServer/home/xoops_data'''<br>(Note when you click in the next text box the above path will be found) | ||
::* Change path from: '''C:/xoops_b/UniServer/www/xoops/xoops_lib''' to '''C:/xoops_b/UniServer/home/xoops_lib'''<br>(Click in one of the other text boxes the path will be found) | ::* Change path from: '''C:/xoops_b/UniServer/www/xoops/xoops_lib''' to '''C:/xoops_b/UniServer/home/xoops_lib'''<br>(Click in one of the other text boxes the path will be found) | ||
::* Website location (URL) '''<nowiki>http:</nowiki>//localhost/xoops''' no need to change | |||
::*Click '''Next''' | ::*Click '''Next''' | ||
<ol start="7"> | <ol start="7"> | ||
<li> Database connection: Enter '''root''' for user name and '''root''' for password click '''Next'''</li> | <li> Database connection: Enter '''root''' for user name and '''root''' for password click '''Next'''</li> | ||
<li> Database configuration: For database name enter '''xoops''' click '''Next'''</li> | <li> Database configuration: | ||
<li> Saving your system configuration: Click Next</li> | * For database name enter '''xoops''' | ||
* Table prefix delete '''xf55''' | |||
* Database character leave default | |||
* Database collation leave default | |||
* click '''Next''' | |||
</li> | |||
<li> Saving your system configuration: Click '''Next'''</li> | |||
<li> Database tables creation: Click '''Next'''</li> | <li> Database tables creation: Click '''Next'''</li> | ||
<li> Please enter your initial settings: | <li> Please enter your initial settings: | ||
* Admin login: '''admin''' | |||
* Admin e-mail: '''fred@someone.com''' -- use a real e-mail address | |||
* Admin password: '''root66''' -- use a real password (red indicates weak however is accepted) | |||
* Confirm password: '''root66''' | |||
* Click '''Next''' | |||
</li> | |||
<li> Saving your settings to the database: Click '''Next'''</li> | <li> Saving your settings to the database: Click '''Next'''</li> | ||
<li>Site configuration: Accept | <li>Site configuration: | ||
<li>Choose the default theme | * Accept default | ||
<li>Modules installation | * '''Click Next'''</li> | ||
<li> Welcome to your XOOPS site: | <li>Choose the default theme | ||
<li> | * Default OK - change as required | ||
* '''Click Next'''</i> | |||
<li>Modules installation | |||
* All defaults '''no''' OK | |||
* '''Click Next'''</i> | |||
<li>Modules installation '''Click Next'''</li> | |||
<li> Welcome to your XOOPS site: | |||
* You can now access the home page of your site." -- '''don't click the link'''. | |||
* '''Click Next''' | |||
</li> | |||
<li> You are currently logged in as admin | |||
* Make any changes | |||
* Click '''Log out'''</li> | |||
</ol> | </ol> | ||
'''''Note 1 | '''''Note 1'':''' | ||
You can access your site by typing the following into a browser: '''<nowiki>http://localhost/xoops/</nowiki>''' | You can access your site by typing the following into a browser: '''<nowiki>http://localhost/xoops/</nowiki>''' | ||
Line 98: | Line 127: | ||
== Portability == | == Portability == | ||
Xoops’s configuration file UniServer\www\xoops\'''mainfile.php''' contains various functions | Xoops’s configuration file UniServer\www\xoops\'''mainfile.php''' contains various functions to define paths. | ||
These are set during installation. There are three variables that contain absolute paths: | |||
* XOOPS_PATH | |||
* XOOPS_VAR_PATH | |||
* XOOPS_TRUST_PATH | |||
Absolute paths are not consistent with portability these require converting to dynamic absolute paths (Updated when the server is moved). | |||
Edit file C:\xoops_b\UniServer\www\xoops\'''mainfile.php''' (you will need to remove read only attribute) | Edit file C:\xoops_b\UniServer\www\xoops\'''mainfile.php''' (you will need to remove read only attribute) | ||
Line 118: | Line 153: | ||
<pre> | <pre> | ||
// XOOPS Physical Paths | // XOOPS Physical Paths | ||
// === 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 === | |||
// Physical path to the XOOPS documents (served) directory WITHOUT trailing slash | // Physical path to the XOOPS documents (served) directory WITHOUT trailing slash | ||
Line 141: | Line 178: | ||
'''''[[#top | Top]]''''' | '''''[[#top | Top]]''''' | ||
== Move Servers == | == Move Servers - Optional == | ||
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. | 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. | ||
Line 205: | Line 242: | ||
'''''[[#top | Top]]''''' | '''''[[#top | Top]]''''' | ||
== | == Plugin == | ||
The above instructions are generic allowing you to install the latest version of Xoops. | |||
If you prefer a click and go solution go to [http://sourceforge.net/projects/miniserver/files/Plugins/UniServer%2055-Nano%20Plugins/Applications/ '''SourceForge'''] | |||
* Under '''Plugins''' | |||
* Navigate to sub-folder '''Uniform Server 5-Nano Plugins''' | |||
* Download file [http://sourceforge.net/projects/miniserver/files/Plugins/UniServer%2055-Nano%20Plugins/Applications/V55_Xoops/V55_Xoops_2_4_2a.exe/download V55_Xoops_2_4_2a.exe] | |||
Save this to folder UniServer, to install double click on file. Xoops is pre-configured and ready to go. Check out the read me file for latest information. | |||
'''''Note'':''' This plugin is intended to quickly get Xoops 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 Xoops and include any missing modules. | |||
=== Plugin modifications === | |||
The plugin includes changes for absolution paths and automatic port detection | |||
The following section was added: | |||
{| | |||
|- | |||
| | |||
<pre> | |||
// === 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 === | |||
// === Get Apache port ======================================================== | |||
// Use port from configuration file - because user can change this file | |||
$file_conf = $base.'usr\\local\\apache2\\conf\\httpd.conf'; // Config file | |||
if ($filearray=file($file_conf)) { // read file into array | |||
foreach ($filearray as $txt) { // scan array for port | |||
if(preg_match("/^\s*Listen\s*(\d+)/", $txt,$match)){ // check save matches | |||
$apache_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"; | |||
} | |||
// ======================================================= Get Apache Port === | |||
</pre> | |||
|} | |||
The following section was changed as shown: | |||
{| | |||
|- | |||
| | |||
<pre> | |||
// XOOPS Physical Paths | |||
// Physical path to the XOOPS documents (served) directory WITHOUT trailing slash | |||
define( 'XOOPS_ROOT_PATH', $base.'www/xoops' ); | |||
// For forward compatibility | |||
// Physical path to the XOOPS library directory WITHOUT trailing slash | |||
define( 'XOOPS_PATH', $base.'home/xoops_lib' ); | |||
// Physical path to the XOOPS datafiles (writable) directory WITHOUT trailing slash | |||
define( 'XOOPS_VAR_PATH', $base.'home/xoops_data' ); | |||
// Alias of XOOPS_PATH, for compatibility, temporary solution | |||
define("XOOPS_TRUST_PATH", XOOPS_PATH); | |||
</pre> | |||
|} | |||
The following section was changed as shown: | |||
{| | |||
|- | |||
| | |||
<pre> | |||
// XOOPS Virtual Path (URL) | |||
// Virtual path to your main XOOPS directory WITHOUT trailing slash | |||
// Example: define('XOOPS_URL', 'http://localhost/xoops'); | |||
define('XOOPS_URL', "http://localhost:$apache_port/xoops"); | |||
</pre> | |||
|} | |||
The following section was changed as shown: | |||
{| | |||
|- | |||
| | |||
<pre> | |||
// Database Hostname | |||
// Hostname of the database server. If you are unsure, "localhost" works in most cases. | |||
define('XOOPS_DB_HOST', "localhost:$mysql_port"); | |||
</pre> | |||
|} | |||
'''''[[#top | Top]]''''' | |||
== 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 providers web site. | |||
More impotently the above installation is an extreme security risk if put online as is. | |||
Its imperative you secure the MySQL server before putting your servers online. | |||
[[ | Please read the following page [[MySQL Security | '''MySQL Security''']] and restrict privileges to any user that has connection access to your server. | ||
'''''[[#top | Top]]''''' | |||
== Conclusion == | |||
From the above you have seen how easy it is to install Xoops and make it fully portable. | |||
'''''[[#top | Top]]''''' | '''''[[#top | Top]]''''' |