Looking for a SHOUTCast Host ? look no further!

Check out http://lmas-networks.com you seriously cant beat what they offer for only £1.00 p/month tons of features in the centova cast control panel and if you currently have shoutcast services hosted elsewhere just drop them an email they will give you a price match deal and give you a month free 😮 !!

Shoutcast hosting

They also allow you to use your own amazon affiliate ID (free to get) so you can make some money if anyone buys a track they hear on your stream!

Try them or ask for a free trial you wont be dissapointed.


Install XOOPS for Powerful Open Source Content Management

Content is king. It always has been and always will be. It drives our businesses and motivates our customers. But when you think content management, so many tools come to mind. There’s Drupal and Joomla! for starters. Both of those tools are outstanding solutions for content management. But many organizations are projects are choosing XOOPS.

So what would make one choose XOOPS over other strategies? XOOPS offers the following features:

  • Database driven: XOOPS is powered by MySQL database.
  • Modular: Add or remove as many modules as you like.
  • User customization: Your users can edit profiles, select personal themes, upload custom avatars, and more.
  • World-wide support: Official support sites can be found all over the world (in many languages).
  • Multi-byte languages: Including Japanese, simple and traditional Chinese, Korean, and more.
  • Group permission system: Granular control over group and user permissions.
  • Skinnable interface: Over 800 themes available.

But features alone don’t always demonstrate why you should choose a particular project, especially when a feature set is matched almost feature-for-feature by other projects. If you look at sourceforge.net, you will find XOOPS one of (if not the) highest ranked CMS tool. You’ll find many reasons to select XOOPS as your CMS. Once you have made that choice, it is then time to get going on the build. You might be surprised to know that, regardless of power, XOOPS isn’t all that difficult to get up and running. In this tutorial I will lay out the steps to installing XOOPS on your already running Linux box.

It should be noted, just for clarification, that this tutorial will be using Ubuntu 9.10 as a base for installation.


Let’s take a look at the requirements, before we begin the installation. In order to successfully install XOOPS, you will need:

  • Web server: For this install, we will use Apache. XOOPS can be installed on other platforms using other servers.
  • PHP >= 4.3.0 (5.2 recommended)
  • MySQL >= 3.23 (>= 4.1 recommeded)

Pre-flight setup

You will be using your web browser for the actual installation of XOOPS. But before you can get to that stage, there are a few steps you must take:

  1. Make sure your server is set up and running properly (with PHP and MySQL support). 
  2. Set up your database for XOOPS.
  3. Prepare the directory structure for XOOPS

Let’s tackle these steps one at a time.

Step One

If you have set up your server as a LAMP (Linux Apache MySQL PHP) server, you should be good to go. If you haven’t done so, you can do this easily on a Ubuntu machine with the command:

sudo tasksel

You will then select LAMP server and follow the simple instructions.

Step Two

The next step is to set up your database. We will create a database called “xoops” (no quotes) with the following steps:

  1. Create the database with the command: mysqladmin -u db_user -p create xoops
  2. Change to the MySQL prompt with the command: mysql -u db_user -p (Where db_user is the MySQL administrative user — usually root, unless you’ve made a change to this in order to heighten security).
  3. Grant privileges to the user on the xoops database with the command: GRANT ALL PRIVILEGES ON xoops.* TO root@localhost IDENTIFIED BY 'password'; Here password is the actual password of the database administrator.
  4. Flush all privileges with the command: flush privileges;

Step Three

Now it’s time to prepare the directory structure. The first thing you will do is download the XOOPS file from Sourceforge.  Once you have downloaded that file move the file to /var/www/. But before you unpack the file you need to consider one thing: Are you planning on having more than XOOPS served up on this server? Will you have multiple web sites here? If so you will want to contain XOOPS inside of its own directory. If not, you can unpack the XOOPS file directly into /var/www. I will go on the assumption you plan on having more than one site on your server, so we will create a container folder for XOOPS. Follow these steps:

  1. From within your terminal (and from within the /var/www directory) issue the command su mkdir XOOPS.
  2. Move the XOOPS file into the newly created XOOPS directory with the command sudo mv xoops-XXX.zip XOOPS (Where XXX is the release number).
  3. Change into the XOOPS directory with the command cd XOOPS.
  4. Unpack the XOOPS file with the command sudo unzip xoops-XXX.zip (Where XXX is the release number).

So far so good. Remember where we mentioned we were going to serve XOOPS from within its own directory? Well, as it stands, you would have to be pointing your browser to http://SERVER_ADDRESS/XOOPS/htdocs/. We want to avoid this so move into the the /var/www/XOOPS/htdocs and move the entire contents of this directory into /var/www/XOOPS. You can do this with the command sudo mv * ../. Now you can back out into /var/www/XOOPS and all of those files will be found.

You now need to create the directory /var/www/XOOPS/uploads with the command sudo mkdir /var/www/XOOPS/uploads. 

The next step is to check to see if the directory /var/www/XOOPS/xoops_data exists. If it does not, create it with the command sudo mkdir /var/www/XOOPS/xoops_data. Now you have to change some permissions. You must give the following directories/files write permission:

  • /xoops_data/configs/
  • /xoops_data/caches/
  • /xoops_data/caches/xoops_cache/
  • /xoops_data/caches/smarty_cache/
  • /xoops_data/cache/smarty_compile/
  • /var/www/XOOPS/mainfile.php

The above is done with the command chmod 777 "DIRECTORY/FILE NAME". And that is the difficult aspect of the installation. Now you only need point your browser to http://ADDRESS_TO_SERVER/XOOPS/ to begin the web-based installation.

Web install

There will be approximately fourteen screens to walk through for this installation. All of these screen will be very intuitive. The screens are:

  1. Language selection: Select the language for the installer.
  2. Introduction: Read about the installation process.
  3. Configuration check: XOOPS installer checks to see if everything is ready.
  4. Paths settings: Are all of your paths correct?
  5. Database connection: Database server settings.
  6. Database configuration: XOOPS database settings.
  7. Configuration save: Write settings to mainfile.php.
  8. Tables creation: Create tables on database.
  9. Initial settings: Admin user creation.
  10. Data insertion: Data is inserted into tables.
  11. Site configuration: Configure your site.
  12. Select theme: Choose the default theme for your site.
  13. Modules installation: Select modules to install.
  14. Welcome: Final notes.

Only a couple of these screens really need any explanation. The first is Figure 1. This is the second screen you will come across. This screen not only serves as an introduction, but also outlines everything you will need to do for the installation. There are a couple of steps I intentionally left out. Should you choose to add those steps, the instructions are fairly obvious on this screen. 

You might think the next screen(s) that would need attention would be related to the database. If you have created the database in the manner outlined above, you can accept the defaults from the screens. The only exception will be the MySQL admin password.

After the database screens (screens 5 and 6) the next screen that requires user-input is screen 9. Screen 9 requires you to fill out information for an administrator account — very simple.

The Site Configuration screen (see Figure 2) might be the next screen that could trip you up. As you can see there is a bit of pre-configured data added to each section. If your site is a public site, you will want to play close attention to the Meta Tags and Description as these can help your search rankings. You will also want to make sure Yes is selected, if you want to allow New User registration.

The next two screens (Select theme and Modules installation) are also both very intuitive. Upon installation you will only have two themes to choose from and three modules to install. You will need to download more themes and modules in order to further extend the look and functionality of your XOOPS site. You can find more modules at the XOOPS Module Repository and XOOPS themes from the XOOPS Theme Gallery.

Final thoughts

Congratulations! You now have a running XOOPS site installed and ready to go. Make sure you log in as the administrator you created in screen 9 (Initial Settings) so you can further customize your XOOPS site.

Xoops InstallationFigure 2


Xoops installFigure 1

Installing Lighttpd With PHP5 And MySQL Support On CentOS

Lighttpd is a secure, fast, standards-compliant web server designed for speed-critical environments. This tutorial shows how you can install Lighttpd on a CentOS 5.0 server with PHP5 support (through FastCGI) and MySQL support.
1 Preliminary Note

In this tutorial I use the hostname server1.example.com with the IP address These settings might differ for you, so you have to replace them where appropriate.

2 Installing MySQL 5.0

First we install MySQL 5.0 like this:

yum install mysql mysql-server

Then we create the system startup links for MySQL (so that MySQL starts automatically whenever the system boots) and start the MySQL server:

chkconfig –levels 235 mysqld on
/etc/init.d/mysqld start

Create a password for the MySQL user root (replace yourrootsqlpassword with the password you want to use):

mysqladmin -u root password yourrootsqlpassword

Then check with

netstat -tap | grep mysql

on which addresses MySQL is listening. If the output looks like this:

tcp 0 0 localhost.localdo:mysql *:* LISTEN 2713/mysqld

which means MySQL is listening on localhost.localdomain only, then you’re safe with the password you set before. But if the output looks like this:

tcp 0 0 *:mysql *:* LISTEN 2713/mysqld

you should set a MySQL password for your hostname, too, because otherwise anybody can access your database and modify data:

mysqladmin -h server1.example.com -u root password yourrootsqlpassword

3 Installing Lighttpd

Lighttpd is not available from the official CentOS 5.0 repositories, but from the RPMforge repositories (see http://dag.wieers.com/rpm/FAQ.php#B2 for instructions). We install the RPMforge package for RHEL 5 which works for CentOS 5.0 as well:

rpm -Uhv http://apt.sw.be/redhat/el5/en/i386/rpmforge/RPMS/rpmforge-release-0.3.6-1.el5.rf.i386.rpm

Afterwards, we can install Lighttpd like this:

yum install lighttpd

Then we create the system startup links for Lighttpd (so that Lighttpd starts automatically whenever the system boots) and start it:

chkconfig –levels 235 lighttpd on
/etc/init.d/lighttpd start

Now direct your browser to, and you should see the Lighttpd placeholder page:

Lighttpd’s default document root is /srv/www/lighttpd on CentOS 5.0, and the configuration file is /etc/lighttpd/lighttpd.conf.

4 Installing PHP5

We can make PHP5 work in Lighttpd through FastCGI. Therefore we install the packages lighttpd-fastcgi and php-cli:

yum install lighttpd-fastcgi php-cli

5 Configuring Lighttpd And PHP5

To enable PHP5 in Lighttpd, we must modify two files, /etc/php.ini and /etc/lighttpd/lighttpd.conf. First we open /etc/php.ini and add the line cgi.fix_pathinfo = 1 right at the end of the file:

vi /etc/php.ini
cgi.fix_pathinfo = 1
Then we open /etc/lighttpd/lighttpd.conf and uncomment “mod_fastcgi”, in the server.modules stanza:

vi /etc/lighttpd/lighttpd.conf
server.modules = (
# “mod_rewrite”,
# “mod_redirect”,
# “mod_alias”,
# “mod_cml”,
# “mod_trigger_b4_dl”,
# “mod_auth”,
# “mod_status”,
# “mod_setenv”,
# “mod_proxy”,
# “mod_simple_vhost”,
# “mod_evhost”,
# “mod_userdir”,
# “mod_cgi”,
# “mod_compress”,
# “mod_ssi”,
# “mod_usertrack”,
# “mod_expire”,
# “mod_secdownload”,
# “mod_rrdtool”,
“mod_accesslog” )
and then , further down the file, there’s a fastcgi.server stanza which we uncomment as well – make sure you use /usr/bin/php-cgi instead of /usr/local/bin/php in the “bin-path” line::
#### fastcgi module
## read fastcgi.txt for more info
fastcgi.server = ( “.php” =>
( “localhost” =>
“socket” => “/tmp/php-fastcgi.socket”,
“bin-path” => “/usr/bin/php-cgi”
Then we restart Lighttpd:

/etc/init.d/lighttpd restart
6 Testing PHP5 / Getting Details About Your PHP5 Installation

The document root of the default web site is /srv/www/lighttpd. We will now create a small PHP file (info.php) in that directory and call it in a browser. The file will display lots of useful details about our PHP installation, such as the installed PHP version.

vi /srv/www/lighttpd/info.php
Now we call that file in a browser (e.g.

As you see, PHP5 is working, and it’s working through FastCGI, as shown in the Server API line. If you scroll further down, you will see all modules that are already enabled in PHP5. MySQL is not listed there which means we don’t have MySQL support in PHP5 yet.
7 Getting MySQL Support In PHP5

To get MySQL support in PHP, we can install the php-mysql package. It’s a good idea to install some other PHP5 modules as well as you might need them for your applications. You can search for available PHP5 modules like this:
yum search php

Pick the ones you need and install them like this:

yum install php-mysql php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc

Now restart Lighttpd:

/etc/init.d/lighttpd restart

Now reload in your browser and scroll down to the modules section again. You should now find lots of new modules there, including the MySQL module.

%d bloggers like this: