Skip to content


Redirecting Dynamic Pages To Static Pages / URLs

Why Redirect?

You do not want to create new pages on your site using the same content as an old page without setting up a 301 redirect.  Specifically – creating a brand new page that creates a brand new URL string where each new page contains the same content as an existing page – should be examined.

Google and every other search engine want to find ONE VERSION of a page.  The search engines do NOT want to find the same content on multiple pages on your site, much less on another site.  So you need to set a canonical URL (serve http://www.site.com or http://site.com, but not both), check my blog post linked below for the how-to steps.

And if you launch a new version of a page, change the theme, or do anything and that changes the URL – such as moving from a dynamic page to a static page – then you need to implement 301 redirects accordingly for each and every page.  If you move a page from one directory to another, you need to implement 301 redirects accordingly.  If you rename a file from “contact-us.html” to “contact-us.php” you need to implement 301 redirects accordingly.  You get the point – if anything changes in the URL string for a page of content, you need to implement some helpful 301 redirects.  The search engines and your site users will thank you for it.

How To Redirect:

Dynamic pages, in all their helpful glory, sometimes need to be changed or updated or moved or renamed or redirected.  Simply changing the name or location is simple – you just make the appropriate code change or database update and POOF! you get your new page and likewise a new URL.

Dynamic Page URL: www.site.com/index.php?page=867-5309

New Page – Static Page – Moved Page URL: www.site.com/theme/867-5309.html

If you simply launch the theme/867-5309.html page and leave behind the index.php?page= version, you stand to have 2 different versions of the SAME CONTENT on your site.  Duplicate content, while not being a necessary deathnail in such a small instance as between 2 pages, should still be avoided whenever possible.  It’s just good developmental practice too.

Worse yet, suppose you launch the theme/867-5309.html page and simply stop serving the old index.php?page= version.  That leaves behind a 404 error when Google, or a user that’s bookmarked the page, tries to browse to the dynamic page.  404s are ok – at least better than 500 errors – but what’s a better solution – a more helpful solution – a good practice solution – is to 301 redirect the old dynamic page to the new page.

Simply 301 redirecting pages is pretty simple.  There’s a ton of information all over the web on how to do it.  I cover how to 301 redirect users to a canonical domain here, and 301 redirecting dynamic pages to a new, more static type URL string isn’t far off.

There are number of things you must consider, namely the syntax of your .htaccess file must be 100.0000% perfect, and you must have Apache’s mod_rewrite turned ON.  Chances are you’re tech savvy enough to handle that, you know someone who is, or your hosting provider can do it for you.

I like .htaccess because I like Linux.  I also like .htaccess because it’s pretty easy to manage.  If you don’t have an .htaccess file set up, check the Linux steps I outline in my 301 redirect post linked above.

After you’ve got your handy .htaccess file living in your domain’s home space, it’s high-time to get to re-writing.

(pending you’re 301 redirecting all of your domain requests to the www. version of your domain – having set up a Canonical Domain)

Here’s the helpful code you’ll need to do for each dynamic page you’re moving to a static version:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.yoursiteurl.com
RewriteCond %{QUERY_STRING} ^page=867-5309$ [NC]
RewriteRule ^(.*)$ http://www.yoursiteurl.com/theme/867-5309.html? [R=301,L]

Let’s break it down a bit, shall we?

1st Line, turn the RewriteEngine On – pretty important and must be done for every instance.  Again, you’ll need these 4 lines of code for every dynamic page getting moved/updated/renamed.

2nd Line, a RewriteCond (rewrite condition), again pending you’ve specified the www. version of your URL, you’re making a declaration of sorts that what you’re about to do should be applied to this specified HTTP host.

3rd Line, another RewriteCond (rewrite condition), this is where some of the magic starts happening. That “%{QUERY_STRING} ^actually takes the place of the “?” in the dynamic URL – so to speak.  And the QUERY_STRING must be capitalized. There is a space before the % and ^ as well that are required.  Again, the syntax is ultra-important! That $ at the end is VERY important too as well as the [NC] at the end.  All you really need to do is replace the variable and variable values, in this case “page=867-5309 you use in your URLs for this line.

4th Line, this is where the magic is finishing up the redirect for you.  Now that you’ve got your rewrite conditions set up, it’s time to implement them somewhere with a rule, or RewriteRule.  The ^(.*)$ basically says we’ll be using everything we captured in the last rule, between the ^ and the $, and the rewrite is going to go to this new URL. There is a space before the  of the % and ^ and after the $ that are all required. A character I cannot stress the importance of is the trailing ? towards the end of the new/static URL.  That is very important in connecting the Conditions to the Rule.

There we have it – how to 301 redirect dynamic URLs and dynamic pages to new static pages or new file locations.  If you copy those 4 lines and paste them into something simple like Notepad, you’ll see all the spaces and characters just fine.  Remember, turn Apache mod_rewrite ON, use 100.0000% perfect syntax, and use all 4 lines for every page needing a redirect/update.

Posted in Work - SEO/SEM.

Tagged with , , , , , , , .


The Code For 1 Home Page Version – .htaccess Style

Several weeks ago I covered the concept that all home pages – and their respective URLs – are not created equal.

Then today I thought to myself, “hmmm, I wonder if I can find multiple home pages for the site we just launched on Monday?”  Yes, just launched a site and just remembered an invaluable aspect of deployment – have 1 version – just 1 version – for any page and every page.  That includes the home page too, quite obviously.

And what did I find?  You guessed it, more than 1 URL to find the same page/content for my HOME PAGE!!!  Development No-No, shame on me, tisk-tisk, what was I thinking?!?!?

www.site.com/ and www.site.com/index.php both resolved and displayed the same content.  With duplicate content of 1 page on a site not necessarily being a deathnail in terms of site performance in a search engine, but rather a developmental habit that helps send a message to search engines that “my site is legit, well-developed, and well thought out” – I’m glad I remembered – DUH!  (and that message is good to send to search engines at any time – FYI)

My uber-preference for all things Linux leads me down the path of Apache and the use of the oh-so-handy .htaccess file.  If you don’t know what any of that is, check the links at the end of this post.  But without further ado, here is the code that redirects the “index.php” or “index.html” page to the “.com/” that I desire:

RewriteEngine On
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /([^/]+/)*index\.php\ HTTP/
RewriteRule ^(([^/]+/)*)index\.php$ http://www.site.com/$1 [R=301,L]

All you need to do is update the bold sections so they reflect your need/site/coding preferences/tech specs and put that code in your .htaccess file, save, and you’re done.  For me, I had a page file “index.php” that I wanted to redirect/resolve to “www.site.com/” because that’s the way the site is branded, that’s the way the on-site links are set up to the home page, and that’s the way we’re getting inbound links.  We’re NOT getting inbound links to “www.site.com/index.php” and the specified domain for the site in Google WM Tools was “www.site.com/” – again, we wanted every instance of any traffic or link or search engine to find ONE path to the home page.

Hope this helps, Kyle

Linux    Apache Web Server    .htaccess

Posted in Work - SEO/SEM.

Tagged with , , , , , , .


No Comment…

Here is a very interesting breakdown of social media and the huge impact it’s looking to have on the future of the web.  I titled this blog “No Comment” for reasons found at the very end of the post (wink-wink), not that I have any objections to anything the author says because he’s quite right on all accounts.

“(typing_sounds)  Enhance.

(typing_sounds) Enhance.

(typing_sounds) Enhance.”

Link To Social Media Article That’s Spiffy.

Facebook + MySpace + Twitter + Digg = Whoa.

And then there is this SEOmoz post which is all-too-perfect at describing clients.  Scratch that, all-too-perfect at describing SOME clients.  Keep in mind, even a client that might have unrealistic expectations is still a client.  And in the development industry, this line of code drives any and every single solitary program:

$clients = $$$;

Key character in that line is the “s” – as in plural.  If you don’t have cliets, you very well could be looking for new gainful employment soon.  Take what you can get, just be sure to do what you take.

Posted in Work - SEO/SEM.

Tagged with , , , , , , , , , .


FINALLY! Something to blog about.

BuzzStream - Link Building Management Suite

BuzzStream - Link Building Management Suite

Just got this Twitter Tweet from Eric Ward (aka The Godfather of Link Building):

ericward RT @BuzzStream launches! Free link building app: CRM, contact info finder, email and Twitter msg tracking. http://pitch.pe/9069

Thank GOD I was paying attention!  This BuzzStream program is just about all that the doctor could order in terms of a packaged, handy, 3rd party link-building-management-suite.  Oh, and you get to test drive it for FREE.  I’m a sucker for that 4 letter word (free).  Anyway, after seeing the Tweet and being as impatient as I am for someone to respond to my update notification (I wish everyone in my office worked at my pace) I clicked the tiny url.  Straight up URL = www.buzzstream.com

Being somewhat of a self-proclaimed link-building guru (adapting everything I know from experience and following Eric Ward’s lead), I’m always looking for a means to expedite the process – without spamming – and also looking for ways to keep up with link relationships and potential link relationships.  You see, we send untold #’s of emails every day, week, month to relevant resources.  Some of them give us links.  Some don’t.  Some give us links and never let us know so it’s kind of hard to get 100% accuracy for a link building campaign.  BuzzStream helps boost the accuracy and the effectiveness of your link building campaign so you can catch the links you get from people that might not respond.  You can have someone scouring the web for potential resources and set them to delegate everything they find to someone to do the leg work in terms of sending all the emails.  And by sending emails, I mean a non-spammy, classy, well-written, custom email sent to someone specific.  Check my “Link Building – How To Do It Right” post.

Now, BuzzStream doesn’t send the email for you – I would imagine that might be a neato module to add on later – but the management metrics it allows, the searching it performs, the information it spits back, and so on and so on is all really, really powerful and helpful.  I can do everything it can do, but it can do everything I can do and keep it in one nice handy location.  Which is really slick if I want to bring someone else in to help me out.  Or if I want to see who I’ve sent emails to so I can follow up with them.  Or if I want to see which sites have linked to me upon request.  Lots of cool things.

What I recommend if you have any interest in link-building is give BuzzStream a test drive.  It’ll knock your socks off.  With Google getting a nickname as a “popularity engine” you might want to give link building and BuzzStream strong consideration.

Posted in Work - SEO/SEM.

Tagged with , , , , .


Which Home Page Do I Choose?

We’ve all see them, but if you don’t pay careful attention, you might be missing something that’s VERY obvious:

FAIL = ( (.com/)  ==  (.com/home.html)  ==  (.com/index.php)  ==  (.com/default.aspx) );

That’s the coding tech-ness in me saying that there are multiple ways to find the home page of some sites.  I’ve seen as many as 4 different methods to display the home page URL in a browser.

But, but, but, but, but why is that bad?

I’ll tell you – would you like to have to take 4 different routes home from the store?  Or would you like to have 1 method that’s the most direct that’s always available?  I thought so, so if you’re serving a slew of URL versions to get to the home page, you’re giving Google/Yahoo/MSN a pain in the woo-ha.  And that’s bad for SEO, mmmmkay?

The solution(s):

  1. Always link your on-site home page link in your navigation to <a href=”/”>Home<a/> and any other link to the home page on your site. What that does is sends a user or bot to the home page, the same way as if someone enters the URL in a browser – the “/” is mucho importante.  And since search bots are basically really smart text-based browsers, you’re speaking their Love Language.
  2. Never link internally, or externally, to anything other than “http://www.sitename.com” – if your canonical domain is www.sitename.com.  If you’ve got links on your site to .com/index.html – and that displays the same content as .com/ – then guess what, you’re serving multiple versions of the same page and same content on your site.  That’s a no-no.  If you can update inbound links that are hitched up to index.html or default.php, I’d suggest updating them to your ideal location as well.
  3. 301 Redirect all requests for any currently live version of your home page, to one method of viewing your home page URL – preferably “/” And do this ASAP.  Depending on the operating system of your server, you might need to make an IIS update or .htaccess update or scripting update to the code that generates your pages.  A little Googling and you should be good to go.

There.  Those are some reasons and strategies to get you thinking about not serving a sack of routes to your home page.  Your users will thank you and the search bots will to.

Posted in Work - SEO/SEM.

Tagged with , , .


Link Building – How To Do It Right

I wouldn’t be an “SEO Professional” without having some information posted somewhere about Link Building.  Why?  Because inbound links to your site, from other relevant/related sites, make up about 1/2 of the optimization value of your site.  That’s just an estimation because no one knows the true value of links except the brains behind Google/Yahoo/MSN search engines, but if there’s anything you can do outside of on-site optimization, it’s work at building inbound links from quality, related, relevant websites.  I started my SEO career with link building and there are definitely right and very wrong ways to do it.

Here are a few pointers since I see a LOT of developers crying out “why won’t my super-optimized site rank better than my competitor!!!” (wah, wah wah, cry me a river) – so here goes it:

  1. Have a well developed site.   Nobody wants to link to – or be associated with – crap.  That’s right, good inbound links start with a good site.  Ask yourself this: is your site’s content unique?  helpful?  worth revisiting?  current?  well-written?  Start answering those questions and you’re BEGINNING the link-building process.
  2. Look around. Literally.  Chances are there are brick and mortar buildings for companies and organizations that would be great places to get links.  Just today, a guy in a forum I patrol was looking for SEO tips to push his site for a Tai restaurant (Yum!).  He had zero (0) inbound links, but he knew friends in the restaurant business that had well-performing sites, he lived in a city with a Chamber of Commerce, and his city had a Local Businesses section on their website.  Think about it, if you can get links from 2 government resources and a handful of other restaurants, wouldn’t that seem like your site is a quality resource?  Guess what, Google and Yahoo and MSN will too.  Then you’re off to the races.  Make a few phone calls, send a few emails, rub some elbows, and you’ll pick up some great links.
  3. Directories can help  (I don’t care what some people say otherwise). Not all directories were created equal, and in fact, most are worthless, but a very select few are valuable.  DMOZ used to be the king, but since it’s got its share of bogus “editors” the value of the ODP has declined in recent years, however it is still a credible directory to some extent.  The Yahoo! directory charges you $, but if you’ve got 300 bucks laying around, you can get a human reviewed link and get included in a quality directory.  The last one I really recommend is the Business.com directory.  It’s another one where you pay for inclusion, but it’s a positive check mark in favor of your site.  You can also get some traffic from these directories in addition to the link value.
  4. Don’t link to just anyone. Many believe that some outbound links to really important sites in your industry can kind of “get you in the hub” so to speak, which makes sense.  It sort of tells the engines “hey, next time you’re over at that industry leading site, check me out, I’m related.”  But if your site is about car tires and you’re linking to a site about red roses, does that make sense?  Again, just watch who you link to because the search engines surely are too.
  5. Be creative. If you’ve got a great idea, get it to the web and show it off.  With BILLIONS of Internet users now, you can tap into an audience of hundreds and thousands and so on in a matter of minutes.  Some people call it “link-baiting” while I call it being creative.  Develop something helpful, handy, neato, flashy and show it off.  If it’s as handy to others as it seems to you, they’ll dig what you’ve got and link to it.  The handier your do-dad, the better your idea, the more creative and appealing you seem to be, the more attractive you’ll be to someone who might link to you.

Last thing to think about: links pass value to your site AND traffic.  Don’t simply focus on link building for SEO purpuses because you’ll miss 1/2 the point.  Remember the idea of optimizing a site is to find users and repeat users and a steady flow of those users, and traffic building links are truly key to a site’s success.  You want users and link love, don’t ever, ever forget that.  Ever.

Posted in Work - SEO/SEM.

Tagged with , , , , .


So Much For Global Warming

Ok, whoever coined the term “global warming” obviously didn’t envision Tuscaloosa, Alabama on April 6, 2009.  I’m a pretty big opponent of the idea anyway because of the SCIENCE that disproves the THEORY – but that’s another blog for another day, another dog in another fight (not the Michael Vick type, oooooo, burn!).  Hey, he’s getting out soon – tangent moment.

Anyway – it’s going to be 36 degrees tonight.  Thirty.  Six.  Degrees.  Alabama.  April.  Those words should never, ever be associated.  Ever.

I’d buy into the idea of global warming if it were 86 degrees today.  But the low tonight will be FIFTY (five-zero) degrees lower.  That’s freaking cold people!  Especially for us thin-blooded folks that reside South of the Mason Dixon line – which technically includes some places far more suited for this kind of weather – of which, I am most assuredly not.

This is what I prefer:

Mucho Better-o

Note the inclusion of a beach, sunny weather, palm trees, sand, salty air, etc. and overall warm feeling.  Things that make me want to live, not go stiff.

Anyway, the weekend – it was cool.  Saw some planes fly on Saturday (FA-18 Hornet, A-10 Thunderbolt – Wart-hog really, C-17, C-130, B-25, and a bunch of bi-planes).  And the Army Golden Knights parachute team.  They were pretty cool too.  I should write the mayor and thank him for getting something this cool to come to town which helps with the “po-dunk-ness” of this place.  And I should write him another letter letting him know the traffic afterwards was God-awful terrible.  I sat in my car, nearly motionless, for 90 minutes.  I say nearly motionless because I could have walked from my parked car to where I really started moving in about 20 minutes – max.  So by my calculations, I drove about 4 1/2 times SLOWER than I can drive in post-airshow traffic.  Needless to say I was in a GREAT mood…

Posted in Life.

Tagged with , .


Tomorrow

I’ll blog the weekend – tomorrow.  Tired and hungry, but at least Jeff Gordon won today!

FINALLY!  48 races for 2 6-shooters

FINALLY! 48 races for 2 6-shooters

Posted in Sports.

Tagged with .


It's amazing…

Today, in a forum for a search engine that I shall not name, I found a thread where a user posted a question wondering why their site was not being indexed by this same search engine.  Curious, I checked the site out.

I did a site:www.sitename.com search – no results.

I did a site:sitename.com search – no results (note the www. prefix missing).

I did a link:www.sitename.com search and found results.  Getting somewhere, I went to one of the results and found that the link was in the footer, as in a “this site designed/hosted by {insert_seo_firm_name}” type link.

(talking to self) “So let me get this straight: the site can’t get indexed, but is a web/seo/design/development company and it’s got inbound links?  Let’s go check out their site.  (click)”

Site loads and every single page on the site has a nofollow tag.  As in, “hey search engine, don’t follow this link, thanks goodbye!”  So I know that Google/Yahoo/MSN, or GYM as I call them, can’t follow any of the other pages, but they should still be able to get to the home page, right?  Right.

Unless…

Unless you add a tag at the top of the page like this guy did that says “Hey, if you’re a search bot, do not index and do not follow ANY content on this site.  At all.  I’m serious.  Leave me alone!  Go away search bot!!!  SCRAM!!!”

That’s right.  A web development self-proclaimed “Web SEO Strategist” added a meta noindex nofollow tag to his very own site and wondered why in God’s name his site wouldn’t be indexed.  I couldn’t resist.  But, I did resist offering up a sarcastic comment and simply told him the solution.

Some people…

Posted in Work - SEO/SEM.

Tagged with , , , , , , .


It's official, I Twitter.

I bought in. I caved.  I couldn’t resist.  No longer could a handy/slick/cool/hottt/happenin’ new tech arena exist without my involvement.  Behold, I Twitter & Tweet now:

http://twitter.com/kylejernigan

Currently, it’s just 1 Tweet – “Just got to the office, ready for 5:00″ which might sound like I want this day to fly by.  Because I do.

Tomorrow I’m catching a Blue Angels Air Show and skipping town with the wife for a night.  So in a word, “yes” I’m ready for this day to be O-ver.

Blue Angels

The Blue Angels

Posted in Life, Uncategorized.