Joomla! 3.1 on XAMPP OS X 1.8.3 PHP 5.5

Today I toyed around with Joomla 3.1. I was asked to take a look at converting an existing Joomla 1.5 site to a more recent version because it’s being hacked all the time. Soon enough I decided that manually converting the existing site to a 3.x version was too laborious to get into, so I would try to make a fresh Joomla 3.1 install and replicate the site in that.

I started out downloading the latest version of XAMPP, as that was the most recommended package for local-hosting Joomla installs. Version 1.8.3 with PHP 5.5 is the most recent at this time. It installed without a problem. Next up was downloading Joomla version 3.1 and unpacking it into the htdocs directory.

From there the Joomla installation procedure started. I pointed the browser to http://localhost/joomla_install and started filling out the required information on the PHP pages. However, every time I completed the first page of information (on admin login and the like) and pressed on to the next page, the animated blue progress bar would show forever. Refreshing the page and trying again yielded the same result every time. I switched browsers but to no avail.

After a short web-search I came up with this link:

http://forum.joomla.org/viewtopic.php?t=808997

which in turn points to the solution here:

https://github.com/joomla/joomla-cms/pull/1309/files

I seems that recent PHP versions deprecated the version of the function ‘preg_replace’ that Joomla uses during installation. Copy-pasting the two new lines into my input.php file did the trick. Too bad the Joomla installer doesn’t warn you about this kind of thing. Searching for a solution like this can be like looking for a needle in a haystack.

2 thoughts on “Joomla! 3.1 on XAMPP OS X 1.8.3 PHP 5.5

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>