Habari LogoI think one of the greatest features of Habari is it’s multi-site support. Unlike Wordpress, Habari has multi-site support out of the box. This allows you to configure multiple blogs off a single installation of the code with a fair amount of control over how independent each of these blogs are.

Each new blog can have it’s own domainname (they don’t even have to be subdomains), database, themes and plugins. However, if you prefer, they can all share the same set of themes and plugins too thus making managing and maintaining all of your sites a very simple affair.

In this post I’ll detail how you can take advantage of this functionality on Joyent’s Shared Accelerator hosting without using up more than one of your allowed “websites”, thanks to aliasing and Habari.

Whilst these instructions are based on Joyent’s hosting plan, they may be very similar for your hosting plan too. Let me know if these instructions work for your hosting solution too.
Continue reading ‘HOWTO:Setup Habari Multi-Site on Joyent’

Links of interest for 12 Aug 2008 - 3 Sep 2008:

Google ChromeThe Google engineers have been hard at work in another bid to change the way we work. Today they will be releasing a new open source browser called “Chrome”.

As is common with announcements these days, the internet soon got wind of the project when someone at Google clicked the “Send” button just a little too early and sent a comic book by Scott McCloud about their new browser out into the world for all to see.

Continue reading ‘Google Chrome: A New Open Source Browser’

Someone’s been attempting to perform a SQL injection attack on my websites, but thankfully without much luck.

I was running through my error and access logs this morning (whilst trying to troubleshoot an issue) and spotted this rather strange entry, well 16 of them this morning alone:

24.47.218.244 - - [28/Aug/2008:05:59:13 +0000] “GET /blog/saffer-brings-veggies-to-life
/?’;DECLARE%20@S%20CHAR(4000);SET%20@S=CAST(0×4445
…[truncated for brevity]…
%20AS%20CHAR(4000));EXEC(@S); HTTP/1.1″ 200 6191 “-” “Mozilla/4.0 (compatible;
MSIE 7.0; Windows NT 5.1; FunWebProducts; .NET CLR 1.1.4322)”

The truncated part is one huge long hexadecimal string. Being the curious person that I am, I investigated these requests a bit further.

Continue reading ‘SQL Injection Attack’

Here’s a great excerpt from the panic.c file in Solaris/OpenSolaris:

113 *
114 * A Note on Word Formation, courtesy of the Oxford Guide to English Usage:
115 *
116 * Words ending in -c interpose k before suffixes which otherwise would
117 * indicate a soft c, and thus the verb and adjective forms of 'panic' are
118 * spelled "panicked", "panicking", and "panicky" respectively. Use of
119 * the ill-conceived "panicing" and "panic'd" is discouraged.

So remember this next time you’re emailing someone about one of your machines “panicing”.

My little Ultra 20 under my desk runs with two boot environments and flip-flop between them as I upgrade using Live Upgrade. The basic procedure is: rename the old inactive BE (lurename), update it with the contents of the currently running BE (lumake), upgrade it to the latest and greatest (luupgrade), activate it (luactivate) and reboot.

This is quite a pain free experience and has worked well for me. I never actually delete the alternate BE as I don’t need the space. However, other people need to and ever since GRUB was introduced into Solaris 10 (x86 only) they encounter the following error when attempting to delete the BE that contains the GRUB menu:

# ludelete -n snv_22
ERROR: The boot environment contains the GRUB menu.
ERROR: You are not allowed to delete this BE.
Unable to delete boot environment.
#

This is a long standing issue (I’ve got a workaround if you want it) that has plagued many a sysadmin using Live Upgrade on Solaris 10 x86 and Nevada. Well, not any more.

Continue reading ‘ludelete of BE Holding GRUB on Solaris x86 Fixed’

If you’ve popped over to Blastwave.org in the last few days you’re likely to have encountered this…

Blastwave.org as of 6 August 2008
(Click for full size)

I don’t know the exact reason for this, but if the comments on the various forums, eg comp.unix.solaris, are anything to go by, it’s such a shame greed has got the better of a great resource.

I’ve never been a big fan of Blastwave (too many non-Solaris supplied dependencies for my liking), but I know many other people are fans and use it quite extensively, but hopefully Dennis or Phil Brown will release an official statement explaining what’s potting.

Update: Unofficial update from Ben Rockwood (an outsider like the rest of us). Looks like things have got very smelly between Dennis and Phil :-(

Update: The Official Response from Dennis Clarke.

I stumbled upon the concept of “Local Shared Objects” for the first time today after reading about the Objection extension for Firefox.

For those who have also not heard of “Local Shared Objects” or LSOs for short, Wikipedia define them as:

A Local Shared Object (LSO) is a collection of cookie-like data stored as a file on a user’s PC. LSOs are used by all versions of Adobe Flash Player and those subsequent to Version 5 of Macromedia’s now-obsolete Flash MX Player

Well, sounds reasonable enough as I’ve had to use cookies to my advantage before, so why shouldn’t Flash developers have the same functionality? I mean, the user can always reject the cookie if they want, like normal cookies, right?

Well, actually NO.

Continue reading ‘Local Shared Object: Flash Cookies You Didn’t Know About’