Removing VBSEO for vbulletin – Reverting back to vbulletin URLs

Thanks for taking the time boss...appreciated truly. I guess there isnt a simple rewrite for all then.

As I think I mentioned, I wrote over 100 rewrite rules when I removed vBSEO from our forums.

.. and nothing is "simple" if you don't understand the basics of what you are doing. That is why you should "get up to speed" on a test forum.

You can't hire me BTW, I'm way too expensive ... sorry. Plus, I just went through 40 hours + of misery decommissioning vBSEO.. and I can tell you it was the least "fun work" I've done in a very long time.

I am very comfortable with mod_rewrite, and I still did a lot of testing on a test forum... I do not recommend that you do mod_rewrite work on a live forum unless you are very skillful at it.

$%^&*(*() HATE the damage one freakin plugin has caused. Tx again!

Yes, vBSEO going out of business caused damage to our forum's SEO and caused a lot of other performance problems for us. In addition, decommissioning vBSEO and doing all the mod_rewrites to "do the best possible" to keep our SEO and index ranking in good shape took a lot of miserable and sometimes quite stressful work.

I understand your pain!

Since vBSEO has been unsupported for sometime, we started to see many 404 errors because of problems with their rewrite engine. Here are some example mod_rewrite rules we had to implement as a "bandaid" and some were just because of automated hacking tools ...

# begin neo seo bandaids
RewriteRule ^var/www(.*)$ $1 [R=301,L]
RewriteRule ^(.*)null$ $1 [R=301,L]
RewriteRule ^(.*)<Image2_truck/>(.*)$ $1 [R=301,L]
RewriteRule ^(.*)/clickenc=$ $1 [R=301,L]
RewriteRule ^(.*)\.\.\.$ / [R=301,L]
RewriteRule ^index\.hp$ / [R=301,L]
RewriteRule ^(.*)\.aspx$ / [R=301,L]
RewriteRule ^admin\.php$ / [R=301,L]
RewriteRule ^wp-admin\.php$ / [R=301,L]
RewriteRule ^wp-login\.php$ / [R=301,L]
#RewriteRule ^index\.hp(.*)d$ / [R=301,L]
RewriteRule ^(.*)\.html/$ $1.html [R=301,L]
RewriteRule ^(.*)\.htm$ $1.html [R=301,L]
RewriteRule ^(.*)extscripturl$ $1 [R=301,L]
RewriteRule ^(.*)null/$ $1 [R=301,L]
RewriteRule ^(.*)upgrade\.php$ / [R=301,L]
RewriteRule ^(.*)/showthread\.php(.*)$ http://www.unix.com/showthread.php$2 [R=301,L]
RewriteRule ^members/memberlist.php(.*)$ http://www.unix.com/memberlist.php$1 [R=301,L]
RewriteRule ^members/list/(.*)$ http://www.unix.com/memberlist.php$1 [R=301,L]
RewriteRule ^members/([0-9]+)\.html$ http://www.unix.com/member.php?u=$1 [R=301,L]
RewriteRule ^(.*)/member\.php(.*)$ http://www.unix.com/member.php$2 [R=301,L]
RewriteRule ^(.*)showpost\.php(.*)$ http://www.unix.com/showthread.php$2 [R=301,L]
RewriteRule ^(.*)/printthread\.php(.*)$ http://www.unix.com/showthread.php$2 [R=301,L]
RewriteRule ^(.*)/forumdisplay\.php(.*)$ http://www.unix.com/forumdisplay.php$2 [R=301,L]
RewriteRule ^(.*)/tags\.php(.*)$ http://www.unix.com/tags.php$2 [R=301,L]
#RewriteRule ^unix/linux/f-([0-9]+)\.html$ http://www.unix.com/archive/index.php/f-$1.html [R=301,L]
#RewriteRule ^unix/linux/t-([0-9]+)\.html$ http://www.unix.com/archive/index.php/t-$1.html [R=301,L]
RewriteRule ^unix/linux/(.*)\.html$ http://www.unix.com/archive/index.php/$1 [R=301,L]
RewriteRule ^(.*)usage_201310\.html$ http://www.unix.com/$1 [R=301,L]
RewriteRule ^(.*)mov\.ad$ http://www.unix.com/$1 [R=301,L]
RewriteRule ^(.*)PLACEIMPMACROHERE$ http://www.unix.com/$1 [R=301,L]
RewriteRule ^(.*)javascript\:void\(0\)$ http://www.unix.com/$1 [R=301,L]

Here are some example rewrite rules when vBSEO was removed, for forums:

RewriteRule ^linux/$ /forumdisplay.php?f=45
RewriteRule ^google-chrome-os/$ /forumdisplay.php?f=131
RewriteRule ^red-hat/$ /forumdisplay.php?f=109
RewriteRule ^hp-ux/$ /forumdisplay.php?f=44
RewriteRule ^solaris/$ /forumdisplay.php?f=43
RewriteRule ^aix/$ /forumdisplay.php?f=47
RewriteRule ^os-x-apple/$ /forumdisplay.php?f=48
RewriteRule ^sco/$ /forumdisplay.php?f=52
RewriteRule ^debian/$ /forumdisplay.php?f=120
RewriteRule ^security/$ /forumdisplay.php?f=14
RewriteRule ^slackware/$ /forumdisplay.php?f=122
RewriteRule ^android/$ /forumdisplay.php?f=140
RewriteRule ^gentoo/$ /forumdisplay.php?f=121
RewriteRule ^suse/$ /forumdisplay.php?f=118
RewriteRule ^hardware/$ /forumdisplay.php?f=136
RewriteRule ^programming/$ /forumdisplay.php?f=104
RewriteRule ^bsd/$ /forumdisplay.php?f=46
RewriteRule ^ubuntu/$ /forumdisplay.php?f=117
RewriteRule ^infrastructure-monitoring/$ /forumdisplay.php?f=141
RewriteRule ^shell-programming-scripting/$ /forumdisplay.php?f=30
RewriteRule ^ip-networking/$ /forumdisplay.php?f=3
RewriteRule ^filesystems-disks-memory/$ /forumdisplay.php?f=34
RewriteRule ^virtualization-cloud-computing/$ /forumdisplay.php?f=125
RewriteRule ^unix-desktop-dummies-questions-answers/$ /forumdisplay.php?f=33
RewriteRule ^windows-dos-issues-discussions/$ /forumdisplay.php?f=36
RewriteRule ^web-programming/$ /forumdisplay.php?f=104
RewriteRule ^news-links-events-announcements/$ /forumdisplay.php?f=31
RewriteRule ^unix-ieee-std-1003-1-2001-posix-1/$ /forumdisplay.php?f=38
RewriteRule ^war-stories/$ /forumdisplay.php?f=145
RewriteRule ^whats-your-mind/$ /forumdisplay.php?f=54
RewriteRule ^members-only/$ /forumdisplay.php?f=87

Here are example RSS rewrite rules for forum RSS, to compensate for removing vBSEO:

RewriteRule ^homework-coursework-questions/external.php(.*)$ /external.php?forumids=130 [R=301,L]
RewriteRule ^emergency-unix-linux-support-help-me/external.php(.*)$ /external.php?forumids=129 [R=301,L]
RewriteRule ^unix-advanced-expert-users/external.php(.*)$ /external.php?forumids=7 [R=301,L]
RewriteRule ^unix-dummies-questions-answers/external.php(.*)$ /external.php?forumids=2 [R=301,L]
RewriteRule ^linux/external.php(.*)$ /external.php?forumids=45 [R=301,L]
RewriteRule ^google-chrome-os/external.php(.*)$ /external.php?forumids=131 [R=301,L]
RewriteRule ^red-hat/external.php(.*)$ /external.php?forumids=109 [R=301,L]
RewriteRule ^hp-ux/external.php(.*)$ /external.php?forumids=44 [R=301,L]
RewriteRule ^solaris/external.php(.*)$ /external.php?forumids=43 [R=301,L]
RewriteRule ^aix/external.php(.*)$ /external.php?forumids=47 [R=301,L]
RewriteRule ^os-x-apple/external.php(.*)$ /external.php?forumids=48 [R=301,L]
RewriteRule ^sco/external.php(.*)$ /external.php?forumids=52 [R=301,L]
RewriteRule ^debian/external.php(.*)$ /external.php?forumids=120 [R=301,L]
RewriteRule ^security/external.php(.*)$ /external.php?forumids=14 [R=301,L]
RewriteRule ^slackware/external.php(.*)$ /external.php?forumids=122 [R=301,L]
RewriteRule ^android/external.php(.*)$ /external.php?forumids=140 [R=301,L]
RewriteRule ^gentoo/external.php(.*)$ /external.php?forumids=121 [R=301,L]
RewriteRule ^suse/external.php(.*)$ /external.php?forumids=118 [R=301,L]
RewriteRule ^hardware/external.php(.*)$ /external.php?forumids=136 [R=301,L]
RewriteRule ^programming/external.php(.*)$ /external.php?forumids=104 [R=301,L]
RewriteRule ^bsd/external.php(.*)$ /external.php?forumids=46 [R=301,L]
RewriteRule ^ubuntu/external.php(.*)$ /external.php?forumids=117 [R=301,L]
RewriteRule ^infrastructure-monitoring/external.php(.*)$ /external.php?forumids=141 [R=301,L]
RewriteRule ^shell-programming-scripting/external.php(.*)$ /external.php?forumids=30 [R=301,L]
RewriteRule ^ip-networking/external.php(.*)$ /external.php?forumids=3 [R=301,L]
RewriteRule ^filesystems-disks-memory/external.php(.*)$ /external.php?forumids=34 [R=301,L]
RewriteRule ^virtualization-cloud-computing/external.php(.*)$ /external.php?forumids=125 [R=301,L]
RewriteRule ^unix-desktop-dummies-questions-answers/external.php(.*)$ /external.php?forumids=33 [R=301,L]
RewriteRule ^windows-dos-issues-discussions/external.php(.*)$ /external.php?forumids=36 [R=301,L]
RewriteRule ^web-programming/external.php(.*)$ /external.php?forumids=104 [R=301,L]
RewriteRule ^news-links-events-announcements/external.php(.*)$ /external.php?forumids=31 [R=301,L]
RewriteRule ^unix-ieee-std-1003-1-2001-posix-1/external.php(.*)$ /external.php?forumids=38 [R=301,L]
RewriteRule ^war-stories/external.php(.*)$ /external.php?forumids=145 [R=301,L]
RewriteRule ^whats-your-mind/external.php(.*)$ /external.php?forumids=54 [R=301,L]
RewriteRule ^members-only/external.php(.*)$ /external.php?forumids=87 [R=301,L]

Here are example rewrite rules for the forum page indexes:

RewriteRule ^solaris/index([0-9]+)\.html$ /forumdisplay.php?f=43&pp=40&sort=lastpost&order=desc&daysprune=-1&page=$1
RewriteRule ^aix/index([0-9]+)\.html$ /forumdisplay.php?f=47&pp=40&sort=lastpost&order=desc&daysprune=-1&page=$1
RewriteRule ^os-x-apple/index([0-9]+)\.html$ /forumdisplay.php?f=48&pp=40&sort=lastpost&order=desc&daysprune=-1&page=$1
RewriteRule ^sco/index([0-9]+)\.html$ /forumdisplay.php?f=52&pp=40&sort=lastpost&order=desc&daysprune=-1&page=$1
RewriteRule ^debian/index([0-9]+)\.html$ /forumdisplay.php?f=120&pp=40&sort=lastpost&order=desc&daysprune=-1&page=$1
RewriteRule ^security/index([0-9]+)\.html$ /forumdisplay.php?f=14&pp=40&sort=lastpost&order=desc&daysprune=-1&page=$1
RewriteRule ^slackware/index([0-9]+)\.html$ /forumdisplay.php?f=122&pp=40&sort=lastpost&order=desc&daysprune=-1&page=$1
RewriteRule ^android/index([0-9]+)\.html$ /forumdisplay.php?f=140&pp=40&sort=lastpost&order=desc&daysprune=-1&page=$1
RewriteRule ^gentoo/index([0-9]+)\.html$ /forumdisplay.php?f=121&pp=40&sort=lastpost&order=desc&daysprune=-1&page=$1
RewriteRule ^suse/index([0-9]+)\.html$ /forumdisplay.php?f=118&pp=40&sort=lastpost&order=desc&daysprune=-1&page=$1
RewriteRule ^hardware/index([0-9]+)\.html$ /forumdisplay.php?f=136&pp=40&sort=lastpost&order=desc&daysprune=-1&page=$1
RewriteRule ^programming/index([0-9]+)\.html$ /forumdisplay.php?f=104&pp=40&sort=lastpost&order=desc&daysprune=-1&page=$1
RewriteRule ^bsd/index([0-9]+)\.html$ /forumdisplay.php?f=46&pp=40&sort=lastpost&order=desc&daysprune=-1&page=$1
RewriteRule ^ubuntu/index([0-9]+)\.html$ /forumdisplay.php?f=117&pp=40&sort=lastpost&order=desc&daysprune=-1&page=$1

As you can see, it can take a lot of work to find all the 404 errors and create the mod_rewrite rules when a product like vBSEO is removed / decommissioned.

There are even more rules... I will post some of those later.... stay tuned!

Yes seeing this, this would apply to your forums alone no? It does give me a good example as to how much I despise VBSEO though eheheh.

As I mentioned before, each forum is configured differently. vBSEO had a lot of switches and many configuration options.

You have to look at your 404 errors and devised your own rewrite rules...

These are only examples from our work (as mentioned before).

Your must look at your 404 errors and devise your own plan.

  1. Set up a test forum that mirrors your live forum.
  2. Look at the access.log in your live forum for 404 errors.
  3. Take those 404s and feed them to your test forum.
  4. Experiment with rewrite rules on the test forum until you are happy.
  5. Repeat for all 404 issues.

Got some email and private messages how there should be some magic "one liners" that can rewrite all the 404s "file not found" errors when all the URLs of a forum change when they remove vBSEO.

Some, oddly enough, who have no experience with vBSEO (or rewriting all the URLS of a forum with a half a million pages indexed in Google) seemed to find my very clear explanation of how to change 404s to 301s cryptic, as if their is some "magic bullet" that works for all forums.

In my original post, I gave "the core examples" (from the now defunct vBSEO web site) about rewrite URLs for forum threads. There are three different examples based on three different vBSEO configuration.

However, a forum has a lot more pages than "threads". There are forum pages, and forum indexes, and archives and archive indexes, and there are single posts and their are RSS feeds and their are other pages where the URLs were rewritten by vBSEO.

If the vBSEO product is removed, all of these links, indexed in search engines, will break, and cause a 404 error. Each of these URLs need to be properly rewritten based on how the forum vBSEO setup was configured. There are many configuration switches for vBSEO, so there is not one "magic bullet" mod_rewrite rule which will work for every forum. Even 100 rewrite rules for our forums will not work for another forum because their configuration is different.

So, having said this; I outlined how to correctly do this; and obviously the method I outlined worked because our forums (this forum) has actually seen an increase in traffic and (so far) no negative SEO hit after removing vBSEO. Our traffic has increased since removing vBSEO.

Did the traffic increase because we removed vBSEO and there was some "magic bullet" one or two liner mod_rewrite rule that magically worked for posts, threads, forums, index pages, archives, print friendly pages, archive indexes, forum indexes, and more?

No, removing vBSEO without careful planning and observing 404 errors and then writing mod_rewrite rules to insure the old vBSEO URL were correctly 301'ed to working forum pages is not a trivial task.

This is why many people who have removed vBSEO and tried to use a quick "one or two liner" mod_rewrite rule have seen their search referral traffic drop. That is not what happened here. Our search referral traffic has actually increased since removing vBSEO because of careful mod_rewrite rule implementation via the technique outlined in earlier posts.

And don't forget that it is important to property use the canonical directive when doing a move like this. Search engines need to know that pages with duplicate content (old URLs and new URLs that point to the same content) have a pointer to the "authority" page, the canonical page.

Update:

We installed DBSEO by DragonByte and went back to our original vBSEO URLs, but using DragonByte SEO (DBSEO).

So far, even though DBSEO is still in "beta" we like it much better than vBSEO.

Because of DBSEO, we were able to remove all the 301 redirects we wrote to counter problems from the "death" of vBSEO.

So far, we recommend DBSEO to everyone who was a former vBSEO user.

1 Like

THANKS NEO!

I was looking for a solution for my broken links cause of TFSEO.

It is a plugin which is like VBSEO.

I modified your codes and it worked for me.

I could fix my broken links.

Thank you for sharing your experience/knowledge with us.

Hey guys, I found your forum while searching for vBSEO + nginx configuration. It's awesome that you are providing rewrites to revert back to old vbulletin urls. Since vBSEO is still functional and I want to use nginx, could someone help me out here?

vBSEO provided these nginx rules:

location /forums/ {
rewrite ^/forums/((urllist|sitemap_).*\.(xml|txt)(\.gz)?)$ /forums/vbseo_sitemap/vbseo_getsitemap.php?sitemap=$1 last;

try_files $uri $uri/ /forums/vbseo.php?$args;
}

location ~ /forums/(.*\.php)$ {
rewrite ^/forums/(.*)$ /forums/vbseo.php last;
}
location /forums/vbseo/(includes|resources/html|resources/xml)/ {
	allow      127.0.0.1;
	deny      all;
}

But they don't work. Can someone help me out here?

Also, since vBSEO is still functional, why did you "decommission" it?

Edit: I was able to fix it; "html" files were being served as static files and my seo urls had .html at the end.

Huh?

vBSEO is completely out of business.

We don't call that "functional".. in fact, vBSEO is completely dysfunctional.

Working fine for me

Thank you...