Skip to content →

flowing motion Posts

12 steps to rebuild your WAMP server without losing your data

Like many people, I have a WAMP server on my laptop where I mock up new websites and run private websites as internal Wikipedia.

I am currently running WAMP 2.2 and it fails – a lot – three times in six months.  I have no idea why and each time the symptoms are different.

But I do know what the solution looks like. I need to restore long enough to be able to gain access to my database and back up anything that is not backed up and to set any unusual settings to defaults so I can think about an alternative.  But first I must restore WAMP without losing my website files (www) and the databases which are stored in bin.

Here are the steps.

Step 1 Backup your WAMP folder

Simply copy your WAMP folder into C:/ .  Windows will keep it as Wamp – Copy.

Have a break and calm down. This might take an hour or so depending on how much is in your database bin and www folders.

Step 2 Print out your passwords and permissions

Try to recall your user, host, password table.  If you can log in to phpmyadmin, you will find it there under users.  If your can access your mysql console, open it; ignore the password; and type

Select user, host from mysql.user;

The table will show you your usernames and hosts but not your passwords.

Note well that if you are an organized person, this is a table that you might want to keep on hand for emergency purposes.  But right now we will proceed assuming that we cannot quite recall what we did when we set up WAMP.

Write down what you can remember and do it now before you start guessing and create chaos later.

Step 3 Print out all the files that you might have edited when you set up WAMP

  1.  wamp/apps/phpmyadminVerNo/ (this is where you put your user name and password and where you might have set up authentication and ports)
  2. /wamp/wampmanager.tpl (you might have changed http://localhost to http://localhost:81 if you have changed the port for apache from 80 to 81  three places)
  3. /wamp/bin/apache/apacheVerNo/conf/httpd.conf (if you changed the above, you will also have changed Listen 80 to Listen 81 and localhost:80 to localhost:81)
  4. /wamp/bin/mysql/mysqlVerNo/my.ini (you might have changed the port for myql from 3306 to 3307 – three places)
  5. /wamp/scripts/testport (where you might have changed 80 to 81 in several places)
  6. /wamp/lang/English (where you might have change Port 80 to Port 81)

Also write down the Version Numbers for Apache, MySQL and Phpmyadmin.

Check whether your computer is 64 bit or 32 bit.

You are now ready to start restoring WAMP.

Step 4 Download the correct version of WAMP

Find WAMPSERVER on the internet  and download the correct version of WAMPSERVER.  Don’t be tempted to upgrade while you are restoring.  Keep the task manageable.

Step 5 Uninstall WAMP

Go to your Control Panel (from Start) and uninstall WAMP.  Uninstall removes everything except your www and bin folders.

Step 6 Install the correct version of WAMP

Install WAMP.  I use all of the defaults (IE and dummy email).  If I need to fix my email, I do it in a separate exercise.

REMEMBER to enable the rewrite module in Apache. Go to the WAMP menu, Apache, modules.  Click on rewrite. And close. Then check again. Sometimes the “tick” doesn’t stick.   If you don’t enable rewrite, your websites will not be able to read “pretty urls” that you carefully set up for humans to read and you will get baffling errors.

Step 7 Let WAMP start

When WAMP asks, let it start itself up.  You will see the icon in your bottom tool bar and it should go GREEN.

Step 8 Check you have access to localhost

Got the WAMP menu and check you have access to localhost – that is the list of your websites in www.

If your file shows a password (see Step 3), then you don’t have access to Phpmyadmin – fix that in the next step.

Step 9 Fix your password in so you have access to phpmyadmin

Got to your file (see Step 3). If it differs in format from the one you printed out, then you have installed the wrong version of WAMP. Close all services, exit and start again!

If you have the correct version, then change your user name and password. If you have changed your ports, then do nothing else right now.

Stop all services and restart all services (from the WAMP menu).

Check you have access to phpmyadmin.  If you get a pink error message #2002 or #1045, then in all likelihood, you have put in the user name and password incorrectly.  But sometimes you have little choice but to try to reinstall (start again).  In short, at this point, you should have access to Phpmyadmin and clerical error or confused working procedures is a more likely cause of failure than anything more complicated (Don’t google  it. That is like looking for medical information – you will just panic. Calm down and work systematically.)

If you have access to phpmyadmin, you should be able to access your user table.

Steps 10 & 11 Access a website

Now go to localhost and access a website. If you did not change your ports, everything should work fine.  All done.

If you did change your ports, you have one of two options.  Change the port settings on your websites to match the defaults.  Or, carry on and edit all the files that you printed in Step 3.

To change the port settings in Drupal, the port setting for mysql is in /www/sites/all/default/settings.php. You have to go to Properties with a right click and change from read-only. Change the port to the default of 3306.  Save and set the Properties back to read-only.  Remember you will have to do this for every website.  Also remember if you test this on one website and then go on to change the port settings, come back to change the port setting to the new number.

If you have edited all the files in Step 3,  then this time stop all services, exit and restart WAMP and then all services because you have edited the menu as well as the services you call.

If all goes well, you should be able to access all your websites.

Step 12 Consider changing your server

WAMPSERVER 2.2 seems unstable to me. I don’t know if 2.4 is anybetter.  What I do know is that the file in WAMPSERVER 2.4 is radically different from the one in 2.2 and I cannot see how to update the ports.

Also the version of mysql is different which requires an undate of your data tables as well as your software. To upgrade, you might do better to treat the job as a migration and back up all your websites and all your mysql, rebuild your server and then rebuild your websites.


There you go –it might take you an hour to get back into action. If anything goes wrong, it might take several hours. But don’t panic.  The web is littered with half instructions and panicky notes.  Don’t go near them.  Just work very systematically. Check as you go so that you don’t cause more chaos. And everything will work.


Add a Save button to the top of a Drupal post

One of the annoying features of Drupal 7 is that its submit button is below the fold.

Inevitably when we are writing a long post, we become distracted at some point and posts are left unsaved.  Without an automatic save feature, it is equally inevitable that posts are lost.

To make life a little easier, it is cool to put a Save button at the top of the Add Content form. And it is easy to do.

  1. Install and enable the module Content Type Extras
  2. Go to the list of Modules and Configure Content Type Extras
  3. The Module allows for all manner of extra buttons that I don’t use. I will just forget what they all do.
  4. I go to Extras and check two boxes to add a Save button to the top of each Content Type.
  5. Save and buttons appear whenever you add  a new Article, Book page, etc.

Now you have saved yourself a needless task of scrolling down to find the Save button and given yourself a prompt to Save when you are distracted.

Leave a Comment

Basic guidelines for choosing fonts

I find web design enormously difficult.  I like to approach work in an organized way and I don’t see the method that designers use, though they must have one.

I was enormously relieved then to find a list of rough guidelines on the Adaptive Themes blog originally taken from Smashing Magazine.  Rephrased — here they are.

Serif and Sans-Serif  Fonts?

  • Sans-serif fonts, i.e., fonts such as Arial that have no serifs or flourishes at the end of letters, are still more popular than serif fonts such as Times New Roman.
  • The more common rule-of-thumb is that we should use sans-serif fonts because they are easier to read on the web and serif fonts when we are presenting on paper.
  • The second rule-of-thumb is to use the opposite type of font for the headings.


  • Popular choices for headlines are Georgia, Arial and Helvetica.
  • Popular size for headline fonts range between 18 and 29 pixels.
  • Header font sizes are typical 1.96 times the size of the body font.

Body Text

  • Popular choices for the body of the text are Georgia, Arial, Verdana and Lucida Grande.
  • Typical sizes for the body font are 12 to 14 pixels.
  • The line height for the body text is typically 1.48 times the font size in pixels.

Paragraph spacing

The spacing between paragraphs is typically set at 0.754 the line height in pixels.

Characters per line

The optimal number of characters per line is between 55 and 75.  75 to 85 characters per line is more popular.


The body text is usually aligned left.


Image replacement is rarely used.


Links are underlined or highlighted with bold or color.




Leave a Comment

How to import large files into phpmyadmin and WAMP

One of the more infuriating problems that you will encounter with WAMP is that it will refuse to  import an SQL file.  Too big, it says.

Google this problem and you will learn that it is down to phpmyadmin and that there are three possible ways forward.

  1.  Adjust our php.ini settings to allow a larger file
  2. Use the command prompt to run mysql.exe commands
  3. Edit the .sql file

There is a fourth way forward that is so much simpler.  Hat-tip to this UK web developer.

  1. Go to c:/wamp/apps/phpadmin3.5.2
  2. Make a new subfolder called ‘upload’
  3. Edit to find and update this line: $cfg[‘UploadDir’] = ‘upload’

Now when you import a database, you will given a drop-down list with all the files in this directory.  Chose the file you want and you are done.

Note though, that you only set up this procedure once – at the time you set up WAMP.  So you will forget this procedure!  That is why I have put it on my blog.

Another note to myself – if I have not checked rewrite_module in Apached modules, I should do so now. That is the other modification to the standard install of WAMP that gets forgotten.



One Comment

7 steps to align your website with your business strategy or professional policy

Let’s imagine a professional person who wants a website, because these days we need a website, but who also wants the website to pay for itself – not only to recover the paltry fees for domain name and hosting charges – but also by becoming a useful part of their business.

What should go onto the professional’s website and how should they construct it?

Listed below are 7 considerations, none of which are specific to any one content management system (CMS) or framework though all consistent with Drupal, which is the framework that I am using a lot of these days.

#1 Domain name or url

Your domain name will be something like

  • You will see there that I have used the name that I expect people would use if they were searching for me. You might also use the name of your business.  The principles here are
    • List the names that people might use to search for you and rather go bigger than go smaller. That is, try to include the smallest possible name in a bigger phrase than abbreviate a larger phrase into something meaningless.  Your goal is to have the “phrase” that you wish to be associated with you in your domain name in “black and white” so to speak. Why?  Because people want to find you; and because computers are rather stupid. They are looking for the phrase that people put into the search bar.
    • Also, note that I used .org as my extension. What is the best extension to use?
      • Convention is extremely important in naming.  The top level domain (TLD) begins with extensions such as .com, .org, .edu, .gov, .net These extension are the default for organizations based in the USA but are also to signify a global business.
      • .com suggest business or core.  .net suggests community. .org is something in between and is less popular than .com.  I used .com simply because was already taken and I didn’t want to buy it. So I settled for second best and .org seemed ok to me for what is really a “CV” or “resume” site – that is, for information and not for trading.
      • For my company, I really wanted a .com extension so I expanded the name of the site from Rooi to
      • Many businesses want to be identified with a particular country. They will then prefer to use a country signifier such as
      • New TLDs are coming out now and it is possible to book for a name such as
      • To find out if a domain name is taken, try looking it up on a service like Domainr
      • You will also see that my name is preceded by the well-known www, though I am going to be asked later whether I want to resolve to http://www.jojordan.orgor the reverse.  The principles here are
        • To make sure that your website is set up to resolve to both versions
        • To make sure that one resolves to the other – I believe Google frowns on both being valid as that duplicates content and makes a headache for their spiders (if this is true, they will exact revenge by dropping you down their page rankings – or put another way, punish people who try to scam the rankings by publishing the same thing twice)
        • Simply make a choice and remember to check that your website is set up correctly.  In practice, you will not see the difference but the ranking spiders will
        • Find out where to buy your Domain name. Domainr will probably tell you but if you live in an out-of-the-way place, you might need to visit an office rather than simply make the purchase on line (oh yes, been there and done that).
        • Names are rented rather than bought and must be paid for annually or biannually – put the next payment in your diary! And keep the receipts – they are business costs and at least you don’t pay tax on them

#2 Set up a holding page

While you get your website sorted out, you can make that domain name work for you and start to acquire some experience in website management.

Set up a simple one page website using a contact form so that people can email you.

These are the issues you will be thinking about now.

  • Where will you host your site?  You want the hosting service to be cheap because nothing much is happening right now and you don’t want to be locked in to a long-term contract.
  • Your hosting site can be anywhere in the world but check that their server is in the same timezone as most of your customers. I have had a hosting service take my site down in the middle of the UK working day “for maintenance”.
  • Check that you can log into their cPanel and use phpAdmin to manage your site.
  • Initially, pick a host who offers one-click installs of WordPress or Drupal.
  • Make a MySQL database that will hold your website (I know there is not much in it right now but you are getting practice into the whole process)
  • Install WordPress or Drupal into it (takes 5 minutes)
  • Get some anti-spam set up (Akismet for WordPress and Mollam for Drupal)
  • Theme your site a little (download a free theme)
  • Add some basic information about who you are and a message saying “coming soon”
  • Set up a contact form and make sure the anti-spam is operating
  • For practice, set the backups so that you can import the content of your database (just about nothing right now) into a clean database, anytime, anywhere
  • Also zip and copy all the WordPress or Drupal files and have them emailed to you regularly so you can simply unzip them next to a refreshed database, point them to the database and have your site back running in minutes
  • Pick up the DNS server numbers from your host and go to the computer where you bought your domain name. Insert the numbers against your domain name so the domain name server (the place you buy names) points to the host (where your website sits physically)
  • For sack of clarity, you are gathering usernames and passwords at an alarming rate. This is what should be in your notebook
    • Domain name, place you buy it, annual fee and renewal data
    • Your user name and password at the place you buy your domain name and the email address that you gave them
    • Your hosting service, their url, your package, its cost and when you pay
    • Your username and password to log into their website to pay your account and the email address that you gave them (they should email you when they need a payment)
    • You may use these names and passwords to get to their cPanel where you do things like set up your database but you might be given another set too!
    • Your username and password for your MySQL database and the name you gave to the database
    • Your username and password and name of the website that you set up – these will be the no 1 account for your website with admin rights.  You can use these to log on to your website online and do set up tasks that are done from inside the website – like setting up the contact page
    • Your username and password at the spam service (and email address). They will give you a number to insert into your website to connect the two.
    • You can also set up Google Analytics now.  This involves
      • setting up an account with Google Analytics using another set of username, password but not email if you logged in with a gmail account.
      • Getting a code
      • Going back to your website (which still has one page only), logging in, and inserting the code.
      • Adding an EU cookie alert if you  are in Europe or expect to do much business here
      • Why should you set up Google Alerts now?  More practice, but to remind you to start developing name recognition. Use your url on your name badge at conferences; add it to your emails; add it your business cards; add it when you leave a comment on other people’s blogs.  Then you watch your traffic at Google Alerts – not much at first but often very weird indeed.

#3 Consider the tone of your website

Initially, we tend to design our websites through touch-and-feel. We google the web for designs and themes and choose on the basis of I like this or a I don’t like that.

To think more about what you are doing, consider the relationship that you will have with your users.

  • Are you going to be a chatty host being pleasant and nice and encouraging people to linger and leave comments to which you will reply?
  • Are you the organiser which draws people into a set of activities designed to move them from noobe to recognised expert in a specific community?
  • Are you a mentor recognising a community brought together by common values and interests?

Your relationship with your users will set your tone; your content will determine your design (colours and layout); and the activities on your site will inform the activity on your site and it’s underlying structure.

At this stage, you might rethink your “coming soon” page?  Now you are no longer befuddled by the internet plumbing, you can think about whether the tone of the page reflects your relationship; whether the look reflects your users; and whether the sign-up reflects your purpose.

For example, a more commercial site might allow send users a voucher to redeem in store; an organising site might send out emails in response to repeated logins to gain some kind of “level” while you get set up; and a community site might request your users to send you notices of events in their areas, or links to articles they have written, which you could share by email to all your users.

From the outside, your website is part of the relationship you have users and as you meet users in real life, you invite and involve them in this community.

#4 Basic services on your website

As you start to build your website, you will initially add some very basic services.

  • Add a privacy statement.
    • I have put the privacy statement here because Google cares.  Decide how you will look after the names and addresses, and for that matter, information about what people read and look at, and write a clear policy.  Put the policy in a “page”.  Later you will probably add a link in footer to this page.
    • Note that you might also be obliged by the law where you live to add something like an EU cookie pop up and to register with Data Protection.
    • Think it out now – these are your customers and you want to look after them from outset.
    • Add some basic information about your commercial operation
      • On another page, add the official name of your business, its registered address, its trading address, its company number if it has one, its VAT number if it has one
      • Your customers need to know whom they are trading with and what codes of conduct you have signed up to (Companies Act, Tax, etc).  You can assume your customers are knowledgeable and know what to look for but in brief – how do they contact you about formal matters?
      • How do your customers reach you to buy?
        • If you are a restaurant, where are you? Where can people park? When are you open?  What are your opening hours?  What do your customers want to know?
        • If your customers come to you, add a Google map.  You can add a printable version but don’t put in a bad map when Google can supply something better than they can use to check directions and transport.
        • Put some markers in for where your entrance is and where the parking is?
        • How do disabled people get to your front door?
        • How can people telephone you?
        • And even what can people email you about?  What do you promise to reply to?
        • Career advice
          • Do you employ people? And if so, who might want to work for you?
          • Do you work with people?
          • What is your advice for people getting started?
          • Bookings
            • What would you like people to buy from you?
            • In some businesses , this is an easy question to answer – in others less easy
            • Start at the end of the sale chain and think about what the final “order” will look like.  You may not be able to put that online, but looking at it and imaging it like a restaurant booking or a book purchase on Amazon will help you see how to structure your site.
            • For example, let’s imagine that you offer language tuition. You don’t have many students, but you imagine that some people sit at home and contemplate whether or not to buy your service.
              • You could put a list of times (and seasons, e.g., school holidays) when you do and do not offer  language services
              • You could put a list of “modules” e.g., travelling to X for the first time, going to a formal dinner, greeting your hosts
              • You don’t necessarily have to put up prices right now – just get started
  • If the purchasing of your services is very complicated, then you might like to start to educate your customers
    • For example, I learn Chinese and it would be helpful to put up some goals such as Level 1: Learn to speak 50 words in simple phrases like Hello and Goodbye, learn to recognise the phrases in Chinese characters and pin yin, and learn to write the characters.  Be able to show Chinese speaker you are willing to learn and be prepared to continue to Level 2 when you are ready
    • I am “showing” what the customer needs to think about to make their decision and when they are ready, they will come back.

#5 Putting together a fuller site

By now, you will have decided on a theme and you are probably using a free theme for WordPress or Drupal.  At this stage you are probably thinking about colour and fonts, mostly.

You will also have these pages ready –

  • A privacy policy
  • A formal business information page
  • The how to get to you which might be married with your contact form
  • Some basic pages about your services

You might also have some email traffic already and be checking Google Alerts and storing away your backups.

You can install your theme and add pages very easily.  Remember to keep your spam filter active!

You might also find your About page very easy to write now.  It does not need to be much but it should state clearly who you are. People don’t like dealing with Anonymous people on the internet.  Something brief and to the point much as you would say over the telephone if you telephoned a potential customer out-of-the-blue

#6 Social Media

You have probably heard the phrase social media or Web 2.0.  Web 2.0 is the web that “answers back”. So far, we have been using Web 1.0.  People can talk to you but they have to switch to email, or to the post, or the phone or Voice-over-internet like Skype.

We have also set up “pages”, that is, static content that does not change very much from one month to the next.  Moreover, when the content on the page does change, you take the page down the way you would rip off an old notice on a noticeboard and replace it with another.

Even on a page though, you can set “comments” as “on”.  I wouldn’t, as these pages are for information.  I would add a link and encourage people to email you.

But people like to comment for three reasons.  They have got used to commenting liberally on Facebook and Twitter.  They want their comment to be public for whatever reason (you may not appreciate the reason but that is another matter). And they leave the name of their own website – not only that others can see it but that Google can see it. Google moves sites up the ranking if they have lots of links to other websites.  So, many of the comments will but outright spam, and Google will penalize you if you don’t clean them up, but the links to real websites will boost your rankings.  Both commentator and host win.

Rather than use your ‘pages’ to move to Web 2.0, it is now time to activate a blog.  Your blog might look like a “page” but it is actually a pile of “posts”, ordered by date with the most recent on top.  It is here that you add information for your readers – remembering the relationship with them that you thought about in Step #3.

Look here at the lovely curation by Ilkut Terzioglu who does not write on about all the technical things he deals with daily. Here he adds visual and graphic things that he values and that will be interesting to his readers who also appreciate the visual and the graphic and the socially interesting.

In a sense, a blog is a newsletter but in nature of a feature column in newspaper. It becomes a resource for readers.

Web2.0 comes in because the top post of your blog changes often.  The others remain on your site but the top one changes. Google likes to see this.  Blogs almost always have their comments “open”.

And the blog should have an RSS feed set up (Really Simple Syndication). Basically, you should see an RSS button in your browser when you look at your url, or somewhere on your page.  Your readers should be able to pick up the url for your RSS feed and put it into a feed reader.  Why do we have this?  If we log on to our feed reader, it pulls the latest blogs from all the places we visit into one place and we don’t have to visit all these other places.  Actually, feed readers are going out of fashion (Google is shutting their service) and you encourage your readers to sign up for a copy of your blog by email but be careful to add an unsubscribe button so they can tell you to stop sending copies programmatically.

You can also use RSS to pipe your blog to other websites, like Linkedin, if you wish – don’t overdo it though.

As a last Web 2.0 measure, consider where you want your material to be advertised. Do you want links to Facebook , Linkedin andTwitter?  Do you want people to email your copy to others?  Do you want people to print easily?

Think through what your readers want to use your material for and make life easy for them?

And then think through the content of your blog.   What do you work on a daily or weekly basis that is useful to them?  If you are running a consumer type service, what information is helpful to them?  If you are helping people level up, what is most interesting to them?  If you are mentoring a shared community, are expert articles – written by yourself or others – what they want?  Ilkut’s visual blog is that – material shared with people who have the same values.  The key words here are “share” and “value”.

#7 Commercialise your site

Finally, we get to the nub of the matter.  Is this website part of your business or just a giant drain on your resources.

I hope that so far you see the value – your customers can find you, they can find out essential information such as your address, and the uninitiated can start to learn the basics – when are you open? What do they start to think about when they use a service such as yours?  You should be recouping your costs with these activities alone.

Commercialising your site is the big step up and to bring your website into your business as a significant player, I suggest that you think this process out.

Imagine a completely naïve customer – they have not hired you or bought from you, or anyone like you, ever.  What is going through their minds?  What confusion and muddle are they experiencing and what basic signposts can you provide to help them understand what is available to them?  What are the basics to understanding your world?

And then think about the end of the process, which I encourage you to think about in Step #4.  If we call the the initial muddle of a complete novice is Stage #1 (for the customer) and signing the final purchase order/contract as Stage #7, then can we work out the intervening five stages that a customer goes through as they gain sufficient experience and understanding to buy from us.

This is the kind of exercise that we want to do practically rather than theoretically, and also the kind of exercise that we don’t want to jump into as you might try if you came to this paragraph first.  Though you don’t need to go through all the website set up that I have listed, working through step-by-step brings us gently to place where we can understand what a customer goes through when they buy a complicated service – as they transition from a newcomer to an expert consumer.

This is the bulk of the work to bringing your website into your business as a major player. From that point, you can make your website much more interesting.  You will also start to use Google Analytics with more verve, too.  GA will tell you where people are landing on your site.  If rank newbies are hitting content intended for people around Stage 5, you can expect them to bounce off your site.  And you might adjust your site but adding a clear path from 1 to 7 that appears on every single page.

It is here that you provide a very significant pre-sales service where customers learn what is available to them in this world to make their lives better; and how to set about learning more and becoming more involved.

Once you have got this far, then you will become more demanding of the CMS that you are using, be it WordPress or Drupal, and the whole business of running your Website will become much more interesting and rewarding – both task by task and sale by sale.

I hope this helps and that these 7 steps help you understand what is involved in running a website.  I hope you feel confident to set about developing a website and copying with the internet plumbing.

And above all, I hope you are able to develop fantastic websites that help people discover your world and to benefit from it in ways that benefit them and bring them economic advantage.



How to change the port numbers on WAMP and stop conflicts with a portable server

To install WAMP on your PC

What is WAMP?

WAMP stands for Windows Apache MySQL Php. 

·        Windows is your operating system.

·        Apache is a server that manages communications between computers on a network including the internet.  All websites reside on a server somewhere.

·         MySQL is a database to hold the contents of a website. A website is made up of two parts: its database and its programmes such as PHP

·        PHP is a programming language.  The language resides on the server and the website is written in PHP.

When do we use WAMP?

Anyone who develops websites, including their own blog, is likely to want to install WAMP on their computer.  If they don’t use Windows, then they will be looking for LAMP or MAMP.

WAMP is installed in folder on your C:/Wamp.

How do I use WAMP?

 To start WAMP up, you go to Start/All Programs/Start WAMP.  You may have to give it permission to bypass your firewall.

WAMP has a drop-down (or pop up menu).

You pick “local host” to see a list of websites residing on your WAMP.  Pick any of these and the website should appear in your browser (i.e., Firefox, Chrome, Internet Explorer, etc.)

Alternatively, you can go to your browser bar and type “localhost/mywebsite” [without the “”].  If you are a noobe, note that is an alternative to

If WAMP is running, and “mywebsite” exists, then mywebsite will open in your browser.

In short, you are running a private little internet on your computer and you can see your website in your own browser.

How do I install WAMP?

1.       Download the latest WAMP (first recall whether you have a 64 bit or an older 32 bit machine)

2.       Follow the instructions

3.       Have a look at the menu bar and see localhost, phpAdmin, Apache and MySQL.

Build a website

To build your first website, use WindowsExplorer to make a new folder in c:/wamp/www/mynewwebsite.

Check that you can see the folder when you use WAMP’s menu and choose localhost.  This folder is still empty and in two steps, you will download into it WordPress or Drupal, or whatever you are using.

First, make a new database for your website by going to phpAdmin.  Make a new database and then add yourself again with a new name and password (and name that is not root).  Give yourself all privileges.

Now you can download and install something like WordPress into your folder and when it asks for your database, give it your database name, your new user name and your password.

When you return to localhost and select mynewwebsite, you should see your website in your browser.

WAMP won’t run – port in conflict?

You very likely have Skype running on your computer as well.  Skype “listens” to the same port as WAMP but listens to another as well.

To resolve the conflict, open Skype and look for the technical settings. Uncheck “listen to port 80” and WAMP will work.

WAMP conflicts with another server on your computer?

You may be running ScholarWriter, for example, on Uniform Server and you will find you have to switch off UniformServer before you run WAMP, and vice versa.

You might also be running Maven with Eclipse to run UseCaseTool (uctool).  Maven is also a server. 

You might also have a GeoServer running!

You want WAMP to listen to its own distinct port and you also want MySQL to have its own port.  We will change the port in WAMP from 80 to 81 and in MySQL from 3306 to 3307.

We will accomplish these changes in this order.

1.       Edit Apache’s httpd.conf file

a.       Go to WAMP’s menu and select httpd.conf

b.      Use find to find localhost and change it to localhost:81

c.       Save

2.       Edit c:/wamp/wampmanager.tpl file so the WAMP menu points to localhost:81

a.       Find http://localhost and change it to http://htttp:localhost:81

b.      Three instances

c.       Save

3.       Edit MySQL my.ini file

a.       Go back to the menu and follow MySQL to my.ini

b.      Find 3306 and change it to 3307

c.       Save

4.       Edit the phpAdmin file to recognise the 3307 port

a.        Find the config.php file at c:/wamp/apps/phpadmin…/

b.      Edit out the first reference to localhost against verbose to leave ‘’ with nothing between them – I don’t know why but until I changed this I couldn’t go from the WAMP menu to phpAdmin

c.       Change the next reference to localhost to – apparently if that remains as localhost, then the port defaults to 3306

d.      Change the port from ‘’ to ‘3307’

e.      Save

5.       Restart the WAMP server

a.       Shut down all services

b.      Exit

c.       Restart

d.      And test all the links in the menu

If all is well, you are now directed to both localhost:81 and localhost:81/phpAdmin where you can set up new databases.

Change the port settings on any existing websites

Note that if you already have made a database before you changed the port AND installed a website, then you must change the settings on the website. 

For each website, go to c:/wamp/www/websitename/sites/default/settings.php and edit these lines to match the port settings as follows

     ‘host’ => ‘localhost:81’

      ‘port’ => ‘3307’

Final test

Fire up another server, say a portable website and see if you are able to run two servers on the same PC.

And not least change your password

Your server resides behind your firewall and is not accessible from the internt.

But, just in case, change the password for the user ‘root’

1.       In PhpAdmin, change the password for user root under Privileges

2.       Go immediately back to the file and insert the same password in password.

3.       Reboot your WAMP and just in case you are exposed to the internet, no one should be able to connect to your MySQL without knowing your password.

At last, you should have WAMP running smoothly on port 81 and 3307 while other servers (and Skype) run on other ports.  I have deliberately left port 80 and 3306 clear for a portable server that so the defaults are used for users who are likely to have the greatest disinterest in tweaking their system!


How to remove hundreds of spam comments from a Drupal site

Suffered a spam attack on your Drupal site?  You are in good company. Even with Mollom installed, your site can be overrun faster than a dog with fleas.

To get rid of the thousands and thousands of spam comments, you have two choices.

Either, delete the comments from your MySQL database

To delete spam directly at your MySQL database, you will have to log in to your hosting service.  Then use phpAdmin to find the right table.  And truncate the table to clear out all the comments.

I haven’t tried this but proceed logically and it should work.

Or, delete comments from your front end using a View

  1. Install two modules: Entity API and Views Bulk Operations
  2. Clear your cache
  3. Make a new View at Structure/Views/ and use Comments as your content
  4. Leave the format as Unformatted and set the number of comments as 500 — check the pager
  5. Continue & Edit
  6. Change Content to Fields
  7. Add a Field for Bulk Operations: Comment and set the value as Delete
  8. Remove the filters unless you want them
  9. Save
  10. Go to the View (e.g., http:/ or whatever you called your view)
  11. Start deleting

You need two clicks at the top and you must confirm the list.  It takes a little time and it is probably quicker to delete the table but this was more satisfying and can remain in the background to clean up smaller spam attacks in future.

One Comment

Set up two instances of Uniform Server, each with several websites

What is Uniform Server?

Uniform Server, or UniServer, is server that you  load onto to your laptop, or desktop, so that you can develop websites off line.

Moreover, unlike WAMP and XAMPP and similar local servers, UniServer does not install itself on your machine (provided you run it as a program and not as a service – it comes with both choices).  You unpack UniServer into a conventional folder on a USB, e.g. E:/UniServer/all its files, or onto your hard drive C:/UniServer/all its files.

In practical terms, if you want to move your server and its websites to another computer, you just copy the folder to a USB and then copy the folder on the USB to the next computer.  You can also zip up the folder, copy it and unzip it into a new folder on the next computer.

The importance of Uniserver is that it is a local server, private from the internet, and completely portable. You can zip it up and move it from computer to computer without worrying about installing and rebuilding your websites all over again.

What is a multiple instance of Uniserver?

The instructions for running a multiple instance of Uniserver are a little confusing.

We have two things that we might like to achieve —

First, we might want to run two websites on one copy of Uniserver.  This is very easy and I will outline the steps below. Even if you only intend to run one website, it is worth setting up two websites just to explore and understand the file structures of Uniserver.

The second thing we might want to achieve is to run two servers. We might want to run two instances of Uniserver. Or, we might want to run Uniserver and Wamp, for examples.

The reasons why running two instances of a server is an issue is that when two servers run on our laptop or desktop, they compete for the use of ports. The default port for an Apache server is 80 and the default port for our MySQL server is 3306.  When we have two servers running on our computer, they both try to access the same port.  Indeed, when we first install a server, the server often clashes with Skype and we have to adjust Skype settings so it does not try to access port 80.

Multiple instances of Uniserver, in the way its documentation describes multi-instances, means being able to run two instances of Uniserver at the same time.  To do this, we will set one Uniserver to port 8s and 3306, and the second server to ports 81 and 3307.

[Note, on my computer, I set WAMP server to ports other than 80 and 3306 and leave the Uniserver on 80 and 3306 because I expect more experienced people to use WAMP and less experienced people to be using Uniserver.]

How do I run two websites on one instance of UniServer?

1 Unpack Uniserver and Run as a Program

Once you have unpacked UniServer into a folder, e.g. C:/Uniserver (make sure there are no spaces in the name), then go to the folder and run as a program.

2 Use the menu to Start both Servers

A big blue icon with a “1” opens in your tray and a little menu box opens on your screen.

Start BOTH the Apache server and the MySQL servers.

3 Change your password for the root user for MySQL and all your MySQL databases

As soon as you have started both servers for the first time, Uniserver asks you to change your password for the MySQL server. Do so now. Apparently you can do so later, but that has never worked well for me.

Confusingly, the current password is “root” – and so is the default username “root”.  Change the password form “root” to “mysecret” or whatever.   You now have a database called “mysql” with user “root” and password of “mysecret”.

4 Orient yourself by finding the database that you have just created

To see the database, look in the file structure for “usr” and keep tracking down until you find “mysql”.

5 Make another database, if you need it, or just make one to ensure you understand the file structure

If you will be running more than one website on your Uniserver, go to phpAdmin in the little menu box and make a new database for each website.  Each website will have a user name “root” and a password “mysecret” and they will each have a folder alongside the first database “mysql”.

If you make a database just to know you can and don’t really need it, you can tidy up by going to phpAdmin and deleting the database.  Confirm that its folder has vanished from the file structure.

6 Download Drupal or WordPress or something to run your website

If you are using Drupal, download and unpack the latest version of Drupal into a folder in C:/uniserver/www/your_new_website.  Check the files are in /your_new_website. If they are in one folder below, e.g. /your_new_website/drupal-7-22 then copy the entire file structure up one level to /your_new_website.

7 Download Drupal or WordPress again into another folder

If you are running a second website on a second database, unpack Drupal, or whichever CMS you are using into a second folder /www/the_second_website.  Make sure the file structure is in this folder and not one folder below.

8 Install the websites

Go back to the menu box for Uniform Server and select www.  You will see your two websites (or folders rather).  Select the first one and follow the install instructions.

Insert the name of the database, the username (root) and your database password (mysecret). Then add the details you will use to log in to the website when asked.

Do this for both websites.

You have now installed TWO websites  on ONE instance of Uniserver which is running on the default ports of 80 and 3306

To see your websites, type localhost/your_new_website into the browser bar. Note the name after the / corresponds to the name of the folder in /www.

How do I install two instances of Uniserver?

1 Unpack UniServer software into a second folder

To install a second instance of Uniserver, we unpack it into a SECOND folder such as C:/UniServer2/all its files.

2 Change the port numbers

We start as before with

  • Run as a program
  • Change the password from “root” to “mysecret”

Now, before we continue to do anything else, select “multiple servers” in the menu box.

You will see two columns: old and new. The new settings have incremented all the old settings by one.  Select the button at the bottom right that is partially obscured. This button sets this version of Uniform Server as port 81 for Apache and port 3307 for MySQL.

Also, notice that the icon changes from “1” to “2”.

When you are running Uniform Server “1”, it has standard port settings of 80 and 3306. When you are running Uniform Server “2”, called from C:/UniServer2/, then it has port settings of 81 and 3307.

3 Set up empty databases and download website software

You can make new databases using phpAdmin, as before.

You can also download your website software into folders in /www/website_1 and /www/website_2 as before.

4 Install your website software

But now there is another important change to what you do.

When you install Drupal (and probably other software such as WordPress), state the name of the database that you made in phpAdmin. Give the username (root) and password (mysecret). Then look at Advanced Options. Leave the host name as “localhost” but now add the port number. This is the port number for the database — which in our case is now 3307.

Note well, that we usually leave the database port blank and it reverts to the default of 3306. For the second server “2” (not the first server “1”) we need to fill in the number.

Do this and continue installing as before.

One more change: when you call the websites on the second server from the browser bar: type localhost:81/your_website_name. There was no need to type localhost:80/website_name for the first server because 80 is the default port.

Now you can run server “1” which servers a handful of websites and server “2” which serves another set of websites, at the same time, because they are using different ports.  And you know what to type in the browser bars.

Turn off your UniServers

When you are finished using a Uniserver, choose the correct icon (“1” or “2”), go to the menu box, and turn off both servers.

How to change the settings of Skype

If you have Skype running and your local server will not run, then log into your Skype and go to Tools/Options/Advanced/Connect and uncheck the box ,which says use Port 80 and 443. SAVE,

Skype functions perfectly well without Port 80 and the conflict with your server is immediately resolved.

Congratulations – you are able to install UniServer into two separate folders working on two different pairs of ports. And you are able to install multiple websites on each server and tell the website which MySQL server

One Comment

How to migrate your Drupal site in 3 steps

Migrate your Drupal site in 3 steps

You have a Drupal site on your WAMP, on your computer or you have it on one hosting service, and you want to move it to another.

Will this be hard?

In this post, I will describe the concepts of moving your site.  I’ll also tell you how to connect to a remote hosting service so you are not driven made by your FTP disconnecting on you.

Understand what you are doing

A website is made up of three parts:

  • The content management system, such as WordPress or Drupal.
  • The underlying MySQL database
  • And some code pointing one to the other.


  1. You need to move across all the files of the content management system (CMS) (WordPress or Drupal) from your old service to your new service.
  2. You need to create a clean MySQL database on your new hosting service and transfer across the contents of your MySQL database from your old service.
  3. You must point the CMS to the database (Note WP users – I think you have to point your database to the CMS – so look out for that).

Get the software to manage the interhost transfers

You need software to move the CMS and MySQL around. You can use an FTP like Filezilla to transfer your CMS – but it will take forever.

Rather download Putty and it extra functions and use psftp to transfer the files.  I’ll come back to this later.

If your MySQL database is not too big, you can use PHPAdmin to download and upload at both ends.

Let the internet know what you are doing

You also must make sure that your DNS are pointing to the new site.  What this means is that you must know the DNS of the new hosting service and you must go to the place that manages your domain name and put in the DNS numbers.

It usually takes 4 hours to propagate and for re-direction to take place.

Step 1:  Move your content management system

If you are moving from WAMP or a local server on your own computer, go to www, find your website, and zip up everything – everything – in the folder.

Establish that your hosting service allows you to use ssh access and psftp. If they don’t allow you, move!  And, ask the next service whether they give your free ssh access before you join.

Once you have established ssh access, then you will need to do three things:

  • Get your host’s address which will take the form of  Find out what it is and write it down.
  • Note your ssh username and password. These will be different to the ones that you use to log in to the commercial side of your host and to your website. They will also be different to the one’s you use for the MySQL database.
  • Get Putty and psftp onto your machine.  Put them in a folder such as c:/tools and run them from there. Make your life easier by moving the .zip file that you made above into the same folder.

To use psftp, simply click on it, give it your host’s address and supply your username and password when asked. The password gives no indication it is receiving your input. Don’t panic. Just be careful.

When you are “in”, use ls to list what is in your directory. If you are in the right place, upload your file by typing “put c:/tools/”.  Let psftp run. It takes time but at least you won’t be timed out as you will be in Filezilla.

When psftp is done, you will get the cursor back > and your unzip your file with a simple “unzip”.

Another hint: if your website is called, call your zip file so that it opens neatly into a folder called Otherwise, remember to rename your folder with your domain name.

Your content management files are now ready and waiting but they won’t work yet because you have no database.

Step 2:  Move across your database

The first thing to do now is to go to your new hosting service and figure out how to set up a clean MySQL database.

Note carefully the name that it is given, the username, and the password.

Also, hunt around for Drupal installation instructions. Specifically, you want to know what you must call your host.  I have one hosting service that uses “local host” and one that requires something like “”.  Find out and write it down.

Then go to your old hosting service and use PHPAdmin to export your database.  This is a three step task.  A) Find the database.  B) Export . C) Set the name and the compression type. D) Go.

But there are TWO complications. First, you are given a choice of format. And some hosting services accept some formats and some others.  The easiest way to find out is probably to make a mistake.  So export. And when you find you need another format when you are importing, then start again!

The second complication is that the export procedure may add a CREATE database command that will trip the import.  You can edit this command out of hand but there is a way to avoid the hassle.

When you export, there are two procedures.  If you select Databases from the horizontal menu, a box comes up which lists all the databases and you choose one.  This method puts in the unwanted CREATE command.

If you choose your database on the extreme left, all its contents are listed. Then choose Export and select all the tables. This procedure does NOT insert the unwanted CREATE command.

Now you have a MySQL file (in the right or wrong format – you will discover soon), got to your new hosting service, find the PHPAdmin, select your clean, new database and IMPORT the MySQL database. Wait a little while and you are done.

For clarity, you DO NOT NEED to reconcile the database names, and usernames on the two computers. That is coming next. For moving the database, you can call yourself Charlie on one and Mary on the other. That is no problem.

Step 3: Point you CMS at your database

As a last step, you need to edit your settings.php file which is under sites/all/default.

This is a read only file – so your first step is to give yourself access.

Then scroll down the file until you see the database name, username, MySQL password and host name that you used on your old system.  Change these to the database name, username, MySQL password and hostname for the new system.

Note these are not the names you use to log on to your website. They are the MySQL names that you set up in Step 1.

Hint: if you are working on your own computer, make the changes before you zip up the content management files and go back later to reset them for your local copy.

If you are moving from one remote service to another, you will have to change the settings.php file more laboriously. In Putty or Filezilla, change the permissions to 777. Edit the file. Save. Change the permissions back to 444.  This took me ages. So be prepared to be patient.

Test your site

With these three steps – transfer your CMS, transfer your database, fix your settings.php – your website should run on your new site.

If you have not pointed your domain name to the DNS, you need to do that now.  The order that you do this in is tricky as you can only see your site at the old server or the new one, not both, though you might get a temporary address from your new hosting service.

If you have been careful, the move should have gone uneventfully, so point the domain to the new hosting service and wait four hours to see the result.

One Comment

Struggling with generativity?

The brilliance of psychologists

The best skill that you will learn as a student of psychology is to “operationalise” fuzzy ideas.  In plain language, we beceome brilliant at writing questionnaires.  What is an extravert? Someone likes going to parties. And so on.

Warmth is less valued

The skill that you will not learn as a student of psychology is to “encourage” or “enthuse” others.  You might have thought when you started your studies that that is what psychologists do. Sadly, warmth and connection will be beaten out of you as sin of “measurement error”.

And what of generativity?

So you may be really struggling with the idea of “generativity”.  At least know that you are in good company.  We all have to relearn what is means to help others see possibility and goodness, connection and meaning, in their lives.

Generativity step-by-step

To help you understand the meaning of generativity, as it plays out in our lives, here is a letter that seems to have entered the web via Harvard.

And as a good psychologist, note the elements:

  • The impact of chance on our lives
  • The effect of cutting away on defining who we are
  • The constant effort to broaden-and-build, nonetheless
  • The richness of connection to others to whom we are loyal and dreams we hold sufficiently dear to work at night and day
  • The vulnerability to the disloyalty and treachery of others whom we love and causes to which we have devoted the best years of our lives

And then poetically

And then read the whole.  The poetic quality of language is important.  I was never particularly poetic.  Sadly learning to operationalise didn’t particularly help.

Read the original and then take that step of thinking generatively about your lives and the lives of those you touch.


Leave a Comment