WordPress relies on a system of permalinks to connect to its various pages.

for example a wordpress address may be localhost/blogs/latest

In a simple web server we would expect to find a file structure that reflects this, subfolders blogs/latest and then finally an index.html file.

WordPress doesn’t do this.  instead it uses a system of dynamic redirects to get you to the right place. It calls these redirects PERMALINKS.

in its default form (on Apache at least) these redirects are implemented by a .htacess file.  However on the web server that we are using the .htaccess redirect functionality is not implemented, .htaccess files are ignored by the server.  This causes a problem.  Luckily WordPress doesn’t rely on this functionality, it has other tricks up its sleeve to get you to where you want to be.


By clicking on the ‘settings’ tab in the wordpress menu we find a section ‘permalinks’  here we are able to change how the links work.  By choosing the ‘simple’ option at the top of the list we dispense with the need to .htaccess redirects and instead wordpress implements a schema that seems to rely on $_GET variables.  It seems to pass a set of numbers obviously tie in with something in the WP Database to tell wordpress where to look.

Anyway, the long and short of it is that it works.   Might be worth looking into how wordpress deals with other types of server.  for another day maybe….