Archive for the ‘Technical’ Category

Citrix Web Interface and OWA

Friday, June 11th, 2010

So today I thought I’d do something a bit radical.  I already had a working Outlook Web App installation, and a working Citrix Web Interface installation.  However, they were on different servers, and I have only one IP address.  What to do?

It occurred to me I should install the Citrix Web Interface on the OWA server.  Genius!  But it turned out to not be quite so straightforward.  Because I’m running Exchange 2010, the OWA server was running Windows 2008 R2.  Citrix have only recently released Web Interface 5.3, which supports 2008 R2.

I decided to give it a go.  Firstly I needed to install J# 2.0 Release 2.  Installation of the web interface went smoothly, using the default web site.  OWA and Citrix live in separate folders, which means they would co-exist reasonably well.  Or so I thought.

After creating a citrix web interface site, I attempted to load the page, only to be met with “HTTP Error 503. The service is unavailable”.  After some investigation, log reading, head scratching, and google searching, I discovered the answer to my problem.

The pertinent error message was “The Module DLL ‘C:\Program Files\Microsoft\Exchange Server\V14\Bin\kerbauth.dll’ could not be loaded due to a configuration problem”.  The answer turned out to involve editing an IIS configuration file, “C:\Windows\System32\inetsrv\config\applicationHost.config”.

The line

<add name=”kerbauth” image=”C:\Program Files\Microsoft\Exchange Server\V14\Bin\kerbauth.dll” />

needed to be changed to

<add name=”kerbauth” image=”C:\Program Files\Microsoft\Exchange Server\V14\Bin\kerbauth.dll” preCondition=”bitness64″ />

I thought that would be enough to resolve the problem, but it wasn’t.  Turns out I had to make the same changes to the lines referring to owaauth.dll and airfilter.dll

Once I’d made those changes, and restarted IIS, everything was fine.  I was greeted with the familiar Carbon-themed interface, and a working web interface installation.  Hooray!

Google Maps API

Saturday, May 29th, 2010

Tonight I’ve been doing some work on a website that needed an embedded map. Naturally, I turned to Google Maps, only to discover there’s really two ways of using them.
Firstly, the iframe method. That really sucks, because I’ve no control over how the map looks, or what information is presented.
Secondly, the API. I’ve used this once before, but only as a copy and paste job. Now I discover there’s a new version of the API, much cleaner and better written. Plus, there’s no need for the API key anymore. Perfect. Only, as I read through the documentation, I discover this is a very powerful API, with similarly obtuse documentation. There’s one example map, plus a number of contributed pages purporting to be tutorials. Some just didn’t exist any more, and others were even more confusing than the API documentation.

Fortunately, Google’s search division came to the rescue. I came across a blog that described how to use the API in multiple stages. First up, just the map. Then some settings, a marker, and an information window. Perfect. Exactly what I wanted to do, nicely explained and broken down, so someone unfamiliar with the API, and only vaguely familiar with javascript, could understand. Thanks Gabriel Svennerberg!

Lastly, I needed to work out how to put the map into a drupal node. Every example seemed to make use of the onLoad property of the body tag, which obviously wouldn’t do.

My final result was this:

<div id=”map_canvas” style=”width:400px; height:400px”></div>
<meta name=”viewport” content=”initial-scale=1.0, user-scalable=no” />
<script type=”text/javascript” src=”http://maps.google.com/maps/api/js?sensor=false”></script>
<script type=”text/javascript”>
//map generating code went in here
</script>

Macquarie University irc channel

Thursday, November 8th, 2007

While I was at Macquarie University, I became aware of an irc channel on an Australian irc server where fellow students congregated.  The irc network was austnet, and the channel was #macuni.  It turned out that most of the students using that channel were computing students, similar to myself.

That was several years ago now.  A number of us continue to be regular participants in #macuni.  However, over the years austnet has suffered greatly in terms of reliability.  Some time ago we moved to a different irc network, zirc.  But in the past month or so that network has completely disintegrated,  no dns records, no active servers.

We decided to take matters into our own hand.  And thus irc.macuni.com was born.  We still have the same channel name – #macuni.  If you’re a past, present, or potential student at Macquarie University, please feel free to drop by and say hello.

WordPress category exclusions

Wednesday, November 7th, 2007

Today I figured I would create a category that doesn’t appear on my main page, for testing out some ideas. So I searched google, as I usually would, for instructions to do this.

As usual, answers were forthcoming from the WordPress site itself. It was as simple as modifying index.php for the theme I use, and adding a line so The Loop skipped execution of the main body of the loop, if a category matched the exclusion. Fair enough.

But then I discovered that posts from the excluded category appeared in my rss feed. Not good. After much research, I found many posts from people wanting to know how to do this, but hardly any useful information.

It turns out it is quite simple to exclude a category from an rss feed – it’s done in much the same way as for the main page – editing The Loop. Only in this case, The Loop can be found buried in wp-includes/feed-rss2.php (and also feed-atom.php, feed-rdf.php, and feed-rss.php). Search for the line

<?php while( have_posts()) : the_post(); ?>

and directly after it, insert

<?php if (in_category(’3′)) continue; ?>

if you want to exclude category id 3. Simple!

Leopard on my iMac

Monday, October 29th, 2007

Some time ago now I purchased a lovely 24 inch aluminium iMac.  It came with OS X 10.4.10 – also known as Tiger.  On the weekend (well, last Friday to be more precise) the next major version of OS X – Leopard – was finally released to retail stores around the world.  I therefore decided to upgrade my iMac, and what follows is the story of that upgrade.

My Saturday began rather more unpleasantly than usual.  I had to get up at 6am to be at work by 7am.  Some work was being done that necessitated the shutdown of all servers in a particular datacentre I look after as part of my job.  I was tasked with shutting the servers down beforehand, and ensuring everything still worked after powering them on again.  That task was due to finish sometime around 12pm – I didn’t end up leaving till 1:30pm.

That caused me a fair degree of consternation.  I had decided to visit the Canberra computer markets in order to buy an external hard drive.  I needed the external hard drive to create a backup of my Tiger install, before upgrading to Leopard.  The consternation I felt was due to the time the markets close – 2:30pm.  I had just one hour to walk to my car, drive to the Exhibition Park in Canberra (EPIC) – a place I’d never before been – and find what I wanted.  It was around a 30 minute drive from where I was.

Fortunately I got to the markets before they closed.  I was unable to find a Firewire to SATA enclosure, so instead I settled for an USB 2.0 to SATA enclosure, and a Seagate hard disk. Thus equipped, I drove home.  If I had have been more organised, I would have written down the name of the Apple reseller I planned on visiting, and I could have gone straight there.

As it turned out, the local branch of the Apple reseller had run out of stock of leopard (if they had any in the first place).   I was told to try the city store.  I drove there after confirming they had plenty of copies of leopard in stock.  I would have nearly passed this store on my way home from the markets, which was somewhat annoying.  I bought the family pack of Leopard, since I also own a mac mini and a 12 inch ibook.  It is much cheaper to get the family pack (which allows for installation on up to five computers in the one household) than to buy even two single user copies of Leopard.

In between coming home from the markets and going back out to get a copy of leopard, I plugged in my new external hard drive, partitioned it identically to the internal hard drive, and configured my clone tool of choice – SuperDuper! – to clone my current install while I was gone.

Once the clone was finished, I booted from the external hard drive to confirm it was all ok.  Then I began the relatively painless upgrade to Leopard – a process that took around an hour.  At the end of the upgrade, I had Leopard installed, with all of my applications and settings intact.  In fact, if it wasn’t for clues like the different background on the login page, the 3D looking dock and the semi-translucent menu bar at the top of the screen, I might have thought I was still running Tiger.

Applications seem to load slightly quicker under Leopard.  The new finder interface is taking a bit of getting used to.  Other than that, I quite like Leopard.  It’s different enough so that one realises they aren’t running Tiger any more, yet similar enough that one doesn’t have to relearn how to use their computer.  All in all, I’m quite happy with Leopard.

Blog migrated!

Thursday, October 25th, 2007

You may not have noticed, or even cared, but today I migrated my blog from the elderly, rarely update Blog:CMS (based on Nucleus CMS) to wordpress.

I have managed to import all my old posts and the comments (even though the link underneath the post seems to indicate that there is none). This was relatively simple, once I discovered Leonid Mamchenkov’s nucleus2wordpress perl script. Note that this script only works with earlier versions of wordpress (pre 2.3), since in version 2.3 the database structure has changed significantly.

I’ve also configured apache’s mod_rewrite to redirect links of my old blog format to the new one. This took some doing, since I made use of the pretty URLs offered by my old blog.

If you spot any issues / links that don’t work, please add a comment to this story to let me know. Thanks!