Category Archives: General

Boston – One Year Later

Our ballpark tour quite literally started with a bang.

5 Ballparks. 5 Games. 5 Days. Monday to Friday while everyone else is at work.

What could be better?

On Patriot’s day there are a couple big things going on in Boston. First is the Boston Marathon, second is a traditional 11am start for the Red Sox, which was where we were headed. It was a going to be busy, so we stayed on the edge of the city not too far from the most westerly T station.

On April 15, 2013, we woke up in Auburn, MA and drove to the Riverside station. There was already a line at the station itself, so we parked down the road and walked back.

It was all smiles on the train.

It was also a cool day, being April and all, but it was a party everywhere.

It was a great ending to a great first game, the Red Sox beat the Rays 3-2 on a Mike Napoli double in the bottom of the ninth. It was party central.

After the game we headed towards the marathon, we were going to go see the finish line and grab some lunch.

This photo was taken on the last turn onto Boylston St for the runners, the home stretch. The EXIF data for that picture shows “April 15, 2013 at 2:39:33PM”. That’s almost exactly 10 minutes before the first bomb went off: 2:49:43 pm.

The last turn on the map:

As we walked down from where Hereford meets Boylston, we discussed whether or not to go to the finish line first, or go for clam chowder first. I had heard from my good friend that we should try the chowda at Legal Sea Foods. We actually said ‘The finish line will still be there when we’re done lunch,’ so we walked inside The Prudential Center and found the restaurant.

That cup of soup.

As we sat down to eat we felt something. The Prudential Center is a huge office tower, the blue arrow points to it in the map above. Tamra asked me what I thought it was. I thought maybe a truck backing into a loading ramp a little too hard. I’m always the optimist. People didn’t know what it was, but most shrugged it off. 14 seconds later came the second explosion. This one was closer. The floor shook. Fire alarms went off. We started to leave.

We ended up back on Boylston street and by the time we had made it outside (a minute, two maybe) it wasn’t complete pandemonium, but something wasn’t right. First responders were running down the road, east, yelling at everyone to go back the other way. There were some hysterical people walking around, others dazed.

Of course, I walked right up to the barrier and looked east to see what was going on. This was not a popular choice in my tour group.

We started to walk west, not knowing what had happened.

I did the best I could, called our parents, let our friends know we were OK, not that we knew what had happened yet.

We weren’t sure if we were going to continue with the trip, but as one of my high school buddies says, “We’ll go, we’ll see”, so we did. We told ourselves that if at any time we wanted to leave any place we were, either one of us could say so and we’d just go.

We made it to Yankee Stadium the next day.

where they played Sweet Caroline in tribute:

and then on to Baltimore (Boog’s!), Philly (cheese steaaaak), and back to New York to see the Mets (Shake Shack).

During the Mets game on Friday, people started to rumble in the upper decks. ‘They got the guy’. Soon enough, there was an announcement on the scoreboard, and chants of “USA USA USA” broke out.


With so many deaths and injuries, given the fact that we were so close ,we are very lucky. It’s a year later and I still won’t forget the look on Tamra’s face or the feeling of her hand in mine as we walked west west west.

What we like to think back to, is not how horrible that day was, but the kindness we experienced.

The lady who picked us up saved us that day. We didn’t have the energy left to make it to the car. When we got home, we remembered that the lady had worked at Bloomingdale’s as a makeup artist, and was from Montreal, so I reached out to the store manager via email and told them our story.

The story eventually made it up the chain, and a Bloomingdale’s SVP emailed and said she shared the story with the CEO and President of the company. Later that month, the store manager emailed me and said they had tracked down our hero, Emilia, and presented her with an award and reward for helping out. She turned around, refused the reward, and requested it be donated to the One Fund Boston Charity, another example of the fine person she is.

Thank you Emilia, we’ll always remember your kindness that day.

We want to go back to Fenway again someday, back to Boston. We’d like some happier memories of the city, not by erasing the ones we have, but but by making new ones.

That, and finally get that cup of chowder from Legal Sea Foods.

Archiving An Old Web Site To A Subdomain with .htaccess and PHP

I was recently browsing a website that had been upgraded. For the sake of argument, let’s say the original site was hosted at:

The new site content was placed at the above address, and the previous content moved to:

The problem that is now faced is that there are many links out there to pages on that no longer exist there, and do exist on The URLs need to be redirected, but not all of them, because the new content on needs to be unaffected.

How can we fix this?

Well, most questions online about mod_rewrite and .htaccess files that deal with subdomains are looking to redirect a whole site, or 404 redirects to a static page, which isn’t what we want.

Here is one way to fix it.

1. .htaccess file to redirect to a PHP script
Add an .htaccess file in the root level directory of the webserver (or add this line to an existing one in the right place) with this content:

ErrorDocument 404 /404.php

This will run a PHP script called 404.php every time the web server is asked for a page it can’t find.

2. 404.php – look for the file somewhere else.
The next step is to run this script that will check to see what file you just tried to access at (OK, now we’ll switch to, and look for it at If it exists, you’ll get forwarded there without seeing anything. If it doesn’t exist, then you’ll be left a pleasant message.

$test = '' . $_SERVER['REQUEST_URI'];
$file_headers = @get_headers($test);
if($file_headers[0] != 'HTTP/1.1 200 OK') {
   $exists = false;
else {
   $exists = true;
   header("Location: $test");

You were looking for <?php echo $_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'] ?>

<p> Tried to load <?php echo $test ?> but we couldn't find that.

3. Try It Out

So now, a test.

The file one.html doesn’t exist on, but does exist on But, if you click on either link:

You get to the same page at

Now, if you try the link below, that doesn’t exist on either site, you’ll get an error message:

I hope this helps!