Gentoo upgrade to Apache 2.2

I upgraded my server’s apache from 2.0 to 2.2 today (see <a href=“http://httpd.apache.org/docs/2.2/new_features_2_2.html" target=_new”>Overview of new features in Apache 2.2) and it was painless except for a few minor hiccups. I like to keep my server’s packages up to date with Gentoo’s stable packages not just for new features but mainly to make package upgrades as easy as possible. I find that by staying up to date with upstream stable packages, upgrades are more incremental and rarely cause as much difficulty as having to upgrade from multiple major versions behind.

With Gentoo, the Apache 2.2 upgrade came with a routine:

emerge --sync
emerge -uDav world

I noticed the new Apache version, checked out the other packages listed, and then hit enter to proceed. At the end of the compilation, Gentoo reminded me there are new config files in /etc to merge. Luckily for me, I’ve maintained a clean separation of Apache configuration directives and VirtualHosts, so I was able to accept all of the major configuration directive changes without modification (2.2 mostly just moves around the default directives to more logical locations). Staying up to date and close to upstream shows its benefits here.

Apache restarted without complaining, but attempts to access any of my virtualhosts resulted in a 403 Forbidden:

[Sat Sep 08 13:30:55 2007] [error] [client 89.14.247.41] client denied by server configuration: /home/victor/public_html/

This was caused by Apache 2.2’s /etc/apache2/modules.d/00_default_settings.conf:

&lt;Directory /&gt;
        Options FollowSymLinks
        AllowOverride None
<b>        Order deny,allow
        Deny from all</b>
&lt;/Directory&gt;

You can either override this manually in every vhost.d/*.conf file, or you can just change the “Deny from all” line to “Allow from all” and then make Deny rules manually in each vhost.d file (if you wish). I restarted apache and refreshed my test site, but there was now a new problem - .php files were being parsed as plain text, which meant Apache wasn’t passing off .php files for processing.

I added “-D PHP5” to my /etc/conf.d/apache2’s APACHE2_OPTS line, which tells Apache to load the PHP5 module. However, since my libphp5.so was built for my old Apache, I had to re-compile for Apache 2.2:

emerge -av php

I waited a few minutes, restarted apache, and now everything works beautifully.


I can finally check this off

A little bit of the YUI Library, lots of Drupal, and about two weeks of on and off work has resulted in a new theme for my site. It’s been long overdue for a makeover. The overarching goal was simplicity and good UI, and I’m pretty happy with the results so far.

Yahoo’s YUI is pretty easy to integrate into Drupal, and allowed me to get started quickly. From the YUI library, I’m getting a good Grid-based layout and a ton of rendering and UI improvement tweaks that I would otherwise overlook. I highly recommend the YUI library.

Right now it’s about 75% done, but that last 25% of CSS is where the quirks and bugs start to show up and will take a ton of time to iron out. I think it’s good enough for now, and I’ll try to fix things over the next few weeks as I notice them. If I ever get around to generalizing some of my hacks, I’ll probably put the entire theme up for download.


2002 WSBF Taco Eat-Off

I shot this video while I was a DJ at WSBF, Clemson’s student run radio station. It was a fun event, although the video probably could use a bit more editing to make it shorter.


A downside of VoIP

I live in Germany but maintain a US-based VoIP number through a VoicePulse.com account. The VoIP account allows Rebecca and me to cheaply call the US, and gives our friends and family a “local” US number at which they can reach us in Germany. I’ve got a standard digitally cordless analog phone (heh) that plugs into a Fritzbox supplied by my ISP - 1und1.de. The Fritzbox is a wonderful piece of kit that works as a DSL modem, DHCP-enabled router, WIFI AP, and has two analog telephone adapters (ATAs) built-in. Since 1und1 gives us a free German VoIP number, the FritzBox handles three incoming and outgoing phone lines - my VoicePulse US number, my 1und1 Germany number, and my standard analog line supplied by Deutsche Telekom. Any incoming call lights up all phones connected to the FritzBox. Add in mine and Rebecca’s mobile phones, and in one apartment we have five phone numbers between the two of us. It only seems slightly overkill.

The downside to all of this global connectivity is that people can no longer assume we’re physically tied to a location based on our phone number. When I signed up with VoicePulse, I chose a Charleston, South Carolina area code + prefix. A few years ago, this number identified you to a certain area determined by your phone company. Now, with US number portability and VoIP, locations and numbers are completely detached. My Voicepulse number can ring at a Starbucks in Hong Kong just as well as it does here in Stuttgart.

Quite often our US line will ring anywhere from midnight to 2AM CET, which means we’re likely already in bed or about to be. Midnight to 2AM CET is 6:00-8:00 PM EST - prime-time for telemarketers or overly eager bank representatives to call. I usually just conduct whatever business they are calling to conduct and then politely explain that they’re actually calling Germany, and that I’m anywhere from 6 to 9 hours ahead of them. “Please note this in your system,” I would say. That seems to work well enough.


Stuttgart's Besenwirtschaften

Stuttgart MoonStuttgart has these wonderful little hidden little charms that make it a really great place to live. One of our favorites are the Besenwirtschaften, which are traditional Swabian wine houses. They’re operated by the families that own the numerous vineyards around the Stuttgart area, and by law they are allowed to open 4 months out of the year. They are scattered throughout the city and its surrounding towns, and if you find one you can enjoy very simple (and cheap) Swabian food and fresh wine from that year.

One of my favorites is a place in Degerloch that a German woman introduced me to. It is essentially a living room that overflows into a side room, so the atmosphere is wonderfully warm and intimate. At the most, 20-30 people pack into these two small rooms, and the close quarters means that you are forced to meet and talk to your fellow wine drinkers. Two out of the three times we’ve been there, we’ve had Germans who were young kids during WWII come tell us about their first experience eating bananas and oranges given to them by American GIs. It really is quite nice of them to tell us this, and it makes us feel welcomed in Stuttgart, where our social circle mainly revolves around the large community of expats working for the many international companies based in Stuttgart.

Anyway, so we went last Saturday, which happened to be the same night as the big lunar eclipse. Between 5 of us, we had about 6 liters of wine, so by the time the U-Bahn got me home, I wasn’t as steady as I needed to be to take some good eclipse photos. I managed to shoot two frames before passing out. My next one is really a drunken picture, and the following night I took a few more frames since my camera was already out.