Recently, I had noticed lots of 404 error generated by my wordpress software. My old wordpress tag structure changed from:
/tips/tag/linux_software
/tips/tag/one_two_foo
To:
/tips/tag/linux-software
/tips/tag/one-two-foo
As a result lots of error 404 was dumped into my log file. I wrote a small php code to get rid of the problem:
My tag301.php:
<?php $newTagUrl='http://www.cyberciti.biz/tips/tag/'.str_replace('_', '-', $_GET['r']); @include_once("../include.genlib.php"); movePage(301, $newTagUrl); ?>
Finally, I updated my mod_rewrite (lighttpd rewrite engine) to redirect to new location:
"^/tips/tag/(.*_.*)+$" => "/tag301.php?r=$1"
Code for movePage() is here.
Want to read Linux tips and tricks, but don't have time to check our blog everyday? Subscribe to our daily email newsletter to make sure you don't miss a single tip/tricks. Subscribe to our weekly newsletter here!
- Email this to a friend
- Printable version
- Rss Feed
- Last Updated: Oct/8/2008


{ 2 comments… read them below or add one }
A WordPress plugin that replies a 301 permanent redirect, if requested URI is different from entry’s (or archive’s) permalink. It is used to ensure that there is only one URL associated with each blog entry.
Nice info… bookmarked – just incase I think of changing URL structure :-)