View Full Version : htaccess rewrite issue
RichieBoy67
01-15-2014, 06:56 AM
I am trying to do some rewrites and finally trying to master htaccess but nothing seems to be working for me.
To start I need to send everything under the top listed forum to the bottom one.
http://musclemecca.com/mecca-bodybuilding-discussion-news-226/
To
http://musclemecca.com/forums/226-MuscleMecca-HeadQuarters
I have tried the following to no avail-
RewriteCond %{HTTP_USER_AGENT} bodybuilding\-discussion\-226/ [OR] RewriteCond %{HTTP_USER_AGENT} http\://musclemecca\.com/mecca\-bodybuilding \-discussion\-news\-226/ RewriteRule *. http://musclemecca.com/forums/226-MuscleMecca-HeadQuarters - [R,L]I also tried
RewriteRule ^bodybuilding-discussion-226/.* forumdisplay.php [QSA]
Could someone point me in the right direction here? I am about to pull my hair out.
Thanks,
Rich
ikopylov
01-15-2014, 07:27 AM
Options +FollowSymLinks
RewriteEngine On
RedirectMatch 301 ^/([A-Za-z0-9-]+)-([0-9]+)/$ http://musclemecca.com/forums/$2-$1
RichieBoy67
01-15-2014, 09:20 AM
Thank you very much. It appears as if I was not even close. The first one was a mixture of a tool I had used and my own edits and the second one I wrote myself.
After looking at your code I am very lost.:eek:
--------------- Added 15 Jan 2014 at 05:28 ---------------
# - Update
Doesn't seem to work - I believe due to the current rewrite rules already on my htaccess, some of which are not working either.
RewriteEngine on
RewriteRule f[\d]+/.+-([\d]+)/index([\d]+).html showthread.php?t=$1&page=$2 [L,R=301]
RewriteRule f[\d]+/.+-([\d]+)/ showthread.php?t=$1 [L,R=301]
RewriteRule f([\d]+)/index([\d]+).html forumdisplay.php?f=$1&page=$2 [L,R=301]
RewriteRule f([\d]+)/ forumdisplay.php?f=$1 [L,R=301]
# If you are having problems or are using VirtualDocumentRoot, uncomment this line and set it to your vBulletin directory.
RewriteBase /
RewriteCond %{HTTP_HOST} ^www\.musclemecca\.com$ [NC]
RewriteRule ^(.*)$ http://musclemecca.com/$1 [L,R=301]
RewriteRule ^((urllist|sitemap_).*\.(xml|txt)(\.gz)?)$ vbseo_sitemap/vbseo_getsitemap.php?sitemap=$1 [L]
# If you are having problems with the rewrite from content/ to content.php, uncomment this line to turn MultiViews off.
Options -MultiViews
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
# Forum
RewriteRule ^threads/.* showthread.php [QSA]
RewriteRule ^forums/.* forumdisplay.php [QSA]
RewriteRule ^members/.* member.php [QSA]
RewriteRule ^blogs/.* blog.php [QSA]
RewriteRule ^entries/.* entry.php [QSA]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
# MVC
RewriteRule ^(?:(.*?)(?:/|$))(.*|$)$ $1.php?r=$2 [QSA]
# Check MVC result
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^(.*)$ - [NC,L]
RewriteRule ^(.*)$ - [R=404,L]
## Expires
<ifModule mod_expires.c>
ExpiresActive On
ExpiresDefault "access plus 1 seconds"
ExpiresByType text/html "access plus 1 seconds"
ExpiresByType image/gif "access plus 3456000 seconds"
ExpiresByType image/jpeg "access plus 3456000 seconds"
ExpiresByType image/png "access plus 3456000 seconds"
ExpiresByType text/css "access plus 3456000 seconds"
ExpiresByType text/javascript "access plus 3456000 seconds"
ExpiresByType application/javascript "access plus 3456000 seconds"
ExpiresByType application/x-javascript "access plus 3456000 seconds"
</ifModule>
## Compression
<ifmodule mod_headers.c>
<ifmodule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html text/css text/xml application/x-javascript
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
</ifmodule>
</ifmodule>
## Rewrites
<ifmodule mod_rewrite.c>
RewriteEngine on
Options +FollowSymlinks
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
# Media Library
ReWriteRule ^media/m(\d+).*/tags$ media.php?do=tags_edit&mid=$1 [QSA]
ReWriteRule ^media/m(\d+).*/edit$ media.php?do=details_edit&mid=$1 [QSA]
ReWriteRule ^media/m(\d+).*/report$ media.php?do=report&mid=$1 [QSA]
ReWriteRule ^media/m(\d+).*/c(\d+)$ media.php?do=comment_edit&cmt=$2 [QSA]
ReWriteRule ^media/m(\d+).*/p(\d+).*$ media.php?do=details&mid=$1&pid=$2 [QSA]
ReWriteRule ^media/m(\d+).* media.php?do=details&mid=$1 [QSA]
ReWriteRule ^media/p(\d+).*/edit$ media.php?do=playlist_edit&pid=$1 [QSA]
ReWriteRule ^media/p(\d+).* media.php?do=playlist&pid=$1 [QSA]
ReWriteRule ^media/c(\d+).* media.php?do=category&cid=$1 [QSA]
ReWriteRule ^media/u(\d+).* media.php?do=user&uid=$1 [QSA]
ReWriteRule ^media/tag/(.*) media.php?do=tag&tid=$1 [QSA]
ReWriteRule ^media/results/(.*) media.php?do=results&query=$1 [QSA]
ReWriteRule ^media/advresults/(.*) media.php?do=advresults&query=$1 [QSA]
ReWriteRule ^media/letter/(.*) media.php?do=letter&query=$1 [QSA]
ReWriteRule ^media/browse.* media.php?do=browse [QSA]
ReWriteRule ^media/search.* media.php?do=search [QSA]
ReWriteRule ^media/random.* media.php?do=random [QSA]
ReWriteRule ^media/submit.* media.php?do=submit [QSA]
ReWriteRule ^media/tagcloud.* media.php?do=tagcloud [QSA]
ReWriteRule ^media/playlists.* media.php?do=playlists [QSA]
ReWriteRule ^media/pcreate.* media.php?do=playlists_create [QSA]
ReWriteRule ^media/pmine.* media.php?do=playlists_mine [QSA]
ReWriteRule ^media/favorites.* media.php?do=favorites [QSA]
ReWriteRule ^media/subscriptions.* media.php?do=subscriptions [QSA]
ReWriteRule ^media/admin/edit/s(\d+).* media.php?do=admin_host_edit&sid=$1 [QSA]
ReWriteRule ^media/admin/delete/s(\d+).* media.php?do=admin_host_delete&sid=$1 [QSA]
ReWriteRule ^media/admin/export/s(\d+).* media.php?do=admin_host_export&sid=$1 [QSA]
ReWriteRule ^media/admin/(\w+).* media.php?do=admin_$1 [QSA]
# Media Library from Video Directory
RewriteCond %{QUERY_STRING} do=viewdetails&videoid=(\d+)
RewriteRule ^video\.php$ media.php?do=details&mid=%1
RewriteCond %{QUERY_STRING} viewcategory&categoryid=(\d+)
RewriteRule ^video\.php$ media.php?do=category&cid=%1
RewriteCond %{QUERY_STRING} viewuser&userid=(\d+)
RewriteRule ^video\.php$ media.php?do=user&uid=%1
RewriteCond %{QUERY_STRING} viewtag&tag=(.*)
RewriteRule ^video\.php$ media.php?do=tag&tid=%1
ReWriteRule ^video\.php$ media.php
# Forum
RewriteRule ^threads/.* showthread.php [QSA]
RewriteRule ^forums/.* forumdisplay.php [QSA]
RewriteRule ^members/.* member.php [QSA]
RewriteRule ^blogs/.* blog.php [QSA]
ReWriteRule ^entries/.* entry.php [QSA]
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
# MVC
RewriteRule ^(?:(.*?)(?:/|$))(.*|$)$ $1.php?r=$2 [QSA]
</ifmodule>
<IfModule mod_headers.c>
<FilesMatch "\.(bmp|css|flv|gif|ico|jpg|jpeg|js|pdf|png|svg|swf |tif|tiff)$">
Header set Last-Modified "Mon, 15 Feb 2013 00:00:00 GMT"
</FilesMatch>
</IfModule>Thanks again for the reply,
Rich
ikopylov
01-15-2014, 10:07 AM
Wait little time, i write for you some rulers for writing htaccess
I am russian and it's hard to formulate
RichieBoy67
01-15-2014, 10:17 AM
That would be amazing! Thank you very much for your help and no need to rush.
I understand some of the rules but putting them together is tough for me. I have been working on learning this so your help is greatly appreciated.
ikopylov
01-16-2014, 07:35 AM
1
Root htaccess should be as short as possible and so that there were fewer rules as
Any rules slow down the speed of opening a website.
2
Try to use Redirect and RedirectMatch.
In particular, RewriteRULE load slow down the site
3
Very great importance sequence of rules.
Example
read 1 line, there is a match - execute, no: read a line 2
read 2 line, there is a match - execute, no: read a line 3
etc
RewriteRULE performed primarily from any row
4
Divide your htaccess into several parts
For example:
If you have two or more lines that comply with the rules of redirects in site.com/TAGS/
Create a folder on the server TAGS
And put new htaccess with redirects in this folder
5
Images.
Create a subdomain IMAGE and drag it all the images.
it's make "parallel loading" of images, and accelerate the discovery of page
At the root of the subdomain images.site.com create htaccess with all settings for images
Sorry for my bad english )))
RichieBoy67
01-16-2014, 08:14 AM
Thanks Ikopylov! That was really helpful. I did not even think of #4 to solve some of the issues I am having! Nice and simple.
Really appreciated it,
Rich
BTW - Your english is better than many people I know who speak English as a primary language. :)
ikopylov
01-16-2014, 10:08 AM
I did not even think of #4
At you htaccess (post #3) you write 28 lines of ReWriteRule, which operate in media folder ( www.site.com/media/ (http://www.site.com/media/) )
Del this lines in root htaccess.
Create new file: www.site.com/media/.htaccess (http://www.site.com/media/.htaccess) with this 28 lines
RichieBoy67
01-16-2014, 11:04 AM
Thanks
Yes, that makes sense with the media folder. I will do that definitely.
The problem I am having though mainly is with the urls that do not have folders and no longer exist such as
/bodybuilding-discussion-news-226/official-mecca-top-6-guess-rules-standings-thread-2013-a-
220802/index2.html
to
http://musclemecca.com/threads/220802-***Official-Mecca-Top-6-Guess-rules-amp-standings-
thread***-2013?highlight=rules+standings
A simple redirect will not work for this. If the url was shorter I would be able to do it but the long ones really mess me up.
What is confusing me is that this url is a thread under a forum but it is not using the forum directory. Trying to write rule to redirect all past urls under a certain forum to the new forum they were moved too.
Thanks again. I am learning slowly. :)
ikopylov
01-16-2014, 09:50 PM
The problem I am having though mainly is with the urls that do not have folders and no longer exist such as
/bodybuilding-discussion-news-226/official-mecca-top-6-guess-rules-standings-thread-2013-a-220802/index2.html
to
http://musclemecca.com/threads/220802-***Official-Mecca-Top-6-Guess-rules-amp-standings-thread***-2013?highlight=rules+standingsA simple redirect will not work for this. If the url was shorter I would be able to do it but the long ones really mess me up.
For this part you can not appeal
attention
?highlight=rules+standings
----------------------
vBseo remove this symbols^ "***"
these characters are not in the old *** link
Therefore, if the redirect server can not find their match
That's the only way how you can make a redirect :
Options +FollowSymLinks
RewriteEngine On
Redirect 301 /bodybuilding-discussion-news-226/official-mecca-top-6-guess-rules-standings-thread-2013-a-220802/index2.html http://musclemecca.com/threads/220802-***official-mecca-top-6-guess-rules-amp-standings-thread***-2013/page2
Redirect 301 /bodybuilding-discussion-news-226/official-mecca-top-6-guess-rules-standings-thread-2013-a-220802/index3.html http://musclemecca.com/threads/220802-***official-mecca-top-6-guess-rules-amp-standings-thread***-2013/page3
Redirect 301 /bodybuilding-discussion-news-226/official-mecca-top-6-guess-rules-standings-thread-2013-a-220802 http://musclemecca.com/threads/220802-***official-mecca-top-6-guess-rules-amp-standings-thread***-2013
These characters "***" and not enough
therefore, this is the only option as you can make a redirect
---------------------------
There is another option, but it's a bad idea to implement.
RedirectMatch 301 ^/([a-z-]+)-([0-9]+)/([a-z0-9-]+)-([0-9]+)$ http://musclemecca.com/threads/$4That code must be placed in the bottom, a set of rules that apply to the triad
Execution sequence for example:
RedirectMatch old thread+post => new thread+post
RedirectMatch old thread+pool => new thread+pool
RedirectMatch old thread => new thread
RedirectMatch my bad kod => you bad thread ;)
Short link will be used:
http://musclemecca.com/threads/220802
This is good for the user, it gets to the desired page, but bad for search engine: it will be a duplicate page.
---------------------------
It's important:
Do not forget that Unix understands this:
Letter
letter
As two different words. In windows it as one word
RichieBoy67
01-17-2014, 12:27 PM
For this part you can not appeal
attention
?highlight=rules+standings
----------------------
vBseo remove this symbols^ "***"
these characters are not in the old *** link
Therefore, if the redirect server can not find their match
That's the only way how you can make a redirect :
Options +FollowSymLinks
RewriteEngine On
Redirect 301 /bodybuilding-discussion-news-226/official-mecca-top-6-guess-rules-standings-thread-2013-a-220802/index2.html http://musclemecca.com/threads/220802-***official-mecca-top-6-guess-rules-amp-standings-thread***-2013/page2
Redirect 301 /bodybuilding-discussion-news-226/official-mecca-top-6-guess-rules-standings-thread-2013-a-220802/index3.html http://musclemecca.com/threads/220802-***official-mecca-top-6-guess-rules-amp-standings-thread***-2013/page3
Redirect 301 /bodybuilding-discussion-news-226/official-mecca-top-6-guess-rules-standings-thread-2013-a-220802 http://musclemecca.com/threads/220802-***official-mecca-top-6-guess-rules-amp-standings-thread***-2013
These characters "***" and not enough
therefore, this is the only option as you can make a redirect
---------------------------
There is another option, but it's a bad idea to implement.
RedirectMatch 301 ^/([a-z-]+)-([0-9]+)/([a-z0-9-]+)-([0-9]+)$ http://musclemecca.com/threads/$4That code must be placed in the bottom, a set of rules that apply to the triad
Execution sequence for example:
RedirectMatch old thread+post => new thread+post
RedirectMatch old thread+pool => new thread+pool
RedirectMatch old thread => new thread
RedirectMatch my bad kod => you bad thread ;)
Short link will be used:
http://musclemecca.com/threads/220802
This is good for the user, it gets to the desired page, but bad for search engine: it will be a duplicate page.
---------------------------
It's important:
Do not forget that Unix understands this:
Letter
letter
As two different words. In windows it as one word
This was messing me up big time! I was not aware of that.
Thanks! :)
RichieBoy67
01-20-2014, 01:16 PM
Quick question related to this topic:
Here are some rules and some urls I am working on. Keep in mind I have 2 types of urls that need to be redirected as listed below.
I successfully redirected
forum-name/threadname-threadid/
using
RewriteRule [^/]+/[^/]+-([0-9]+)/ http://musclemecca.com/forums/showthread.php?t=$1 [L,R=301]
Is this correct and safe? It does work but I am unsure if it is totally correct.
##Next
I am trying to create a rule for
/f226/new-bbing-movie-hits-theatres-may-30-a-191420/
which is
something like forumid/threadname-threadid/
I have written
RewriteRule ^f([0-9]+)/$ forumdisplay.php?f=$1 [L,R=301]
This is only redirecting to forum display like
forumdisplay.php/226-MuscleMecca-HeadQuarters?t=210661
and not to the correct post
Last question - How do I deal with thread titles that contain strange characters like ********** ??
Thanks for the help. I have learned alot from this thread.
ikopylov
01-20-2014, 09:49 PM
through such construction: RewriteRule [^/]+/[^/]+-([0-9]+)/
will be held and processed all requests
images, smilies, links, all...
I do not understand why to create this url?
This is a very slow speed to open all site pages
vBulletin 4its very slow, why it make more slow?
I am testing with pinddom.tools:
1mb page without redirects download 4-5sec
1mb page with several redirects download 7-8sec
Search engines perfectly understand short url: showthread.php?t=123456
Redirects should be used only in emergencies
RichieBoy67
01-20-2014, 09:56 PM
Thanks friend. I agree but this is an emergency. We have over 30,000 not found urls in Google and almost 2,000 server errors caused by broken urls.
I am just trying to get some of those not found urls pointing to the right place again.
I agree though that the rule I used was not wise. That is why I am here. :) To learn from the best and htaccess is my weakest point.
ikopylov
01-20-2014, 10:04 PM
Apparently I do not understand you very well
Nevertheless previous post has the right to life
Write me an old and a new link
I'll write you a redirect rule
RichieBoy67
01-20-2014, 10:38 PM
I agree.
I am having a problem with urls like this
http://musclemecca.com/members/74229-tkD
to
http://musclemecca.com/member.php/74229-tkD
Thanks mate!
ikopylov
01-21-2014, 06:51 AM
Create new folder musclemecca.com/member/
Add this .htaccess to new folder member
Options +FollowSymLinks
RewriteEngine On
RedirectMatch 301 ^/members/([0-9]+)-([A-Za-z0-9-]+)$ http://musclemecca.com/member.php/$1-$2
If not work:
Stop all RewriteRule(s) in root and check again.
Friend, I wrote to you several times: do not use RewriteRules use RedirectMatch
RichieBoy67
01-21-2014, 08:17 AM
Thanks,
Ok this works. I forgot I already had the wrong htaccess in a members directory. This works. Starting to finally cut down on the error messages. Much appreciated! I am removing rewrite rules for redirect matches too.
I think I am finally starting to pick up on your method here. It is not what most do but it seems faster and better in my opinion. Great work on using this.
Am I on the right track here with this?
Options +FollowSymLinks
RewriteEngine On
RedirectMatch 301 ^/mecca-bodybuilding-discussion-news-226/([A-Za-z0-9-]+)-([0-9-]+)$ http://musclemecca.com/showthread.php/$1-$2
This is to redirect urls like this that were under f226 but now under /mecca-bodybuilding-discussion-news-226 but are now displayed as http://musclemecca.com/showthread.php like below:
http://musclemecca.com/mecca-bodybuilding-discussion-news-226/art-atwood-dead-37-years-old-219676/
too
http://musclemecca.com/showthread.php/219676-Art-Atwood-dead-at-37-years-old
ikopylov
01-21-2014, 04:02 PM
Thanks,
Ok this works. I forgot I already had the wrong htaccess in a members directory. This works. Starting to finally cut down on the error messages. Much appreciated! I am removing rewrite rules for redirect matches too.
I think I am finally starting to pick up on your method here. It is not what most do but it seems faster and better in my opinion. Great work on using this.
Am I on the right track here with this?
Options +FollowSymLinks
RewriteEngine On
RedirectMatch 301 ^/mecca-bodybuilding-discussion-news-226/([A-Za-z0-9-]+)-([0-9-]+)$ http://musclemecca.com/showthread.php/$1-$2
This is to redirect urls like this that were under f226 but now under /mecca-bodybuilding-discussion-news-226 but are now displayed as http://musclemecca.com/showthread.php like below:
http://musclemecca.com/mecca-bodybuilding-discussion-news-226/art-atwood-dead-37-years-old-219676/
too
http://musclemecca.com/showthread.php/219676-Art-Atwood-dead-at-37-years-old
RedirectMatch 301 ^/([A-Za-z0-9-]+)-([0-9]+)/([A-Za-z0-9-]+)-([0-9]+)/$ http://musclemecca.com/showthread.php/$4-$3
RichieBoy67
01-21-2014, 05:25 PM
Thanks Ikopylov, I was way off but I am almost there. I understand the rules somewhat but certain things still confuse me.
One last question and I will not ask for anything else. You have already helped me correct thousands of not found urls. Thank you.
The only thing I really need to finish now is some urls that use the following
http://musclemecca.com/f226/mr-olympia-2013-updates-info-thread-232742/
to another forum in the advanced friendly format
http://musclemecca.com/showthread.php/232742-***Mr-Olympia-2013***-Updates-and-info-thread!
Can you write one for me so I can figure out the rest?
Will I have to create directories for each of these like"f226"??
Thanks again! I think this should do it,
Rich
ikopylov
01-21-2014, 07:36 PM
One last question and I will not ask for anything else.
No, this is not last question. I know ... :)
# First Lines:
Options +FollowSymLinks
RewriteEngine On
################################################## #########
#
# Attention!
# read this block carefully:
#
#
# At this put all lines which work with forumdisplay.php
#
#
# At this put all lines which work with showthread.php
#
################################################## #########
# Lines for new url with stars ***
Redirect 301 /f226/official-mecca-top-6-guess-rules-standings-thread-2013-a-220802/index2.html http://musclemecca.com/showthread.php/220802-***official-mecca-top-6-guess-rules-amp-standings-thread***-2013/page2
Redirect 301 /f226/official-mecca-top-6-guess-rules-standings-thread-2013-a-220802/index3.html http://musclemecca.com/showthread.php/220802-***official-mecca-top-6-guess-rules-amp-standings-thread***-2013/page3
Redirect 301 /f226/official-mecca-top-6-guess-rules-standings-thread-2013-a-220802 http://musclemecca.com/showthread.php/220802-***official-mecca-top-6-guess-rules-amp-standings-thread***-2013
# Line for thread which live in forums with this constuction: fxxx (f226)
RedirectMatch 301 ^/f([0-9]+)/([A-Za-z0-9-]+)-([0-9]+)/$ http://musclemecca.com/showthread.php/$2-$3
# Line for thread who did not get into any rule redirects
RedirectMatch 301 ^/([a-z-]+)-([0-9]+)/([a-z0-9-]+)-([0-9]+)$ http://musclemecca.com/showthread.php/$4
RichieBoy67
01-21-2014, 07:57 PM
No, this is not last question. I know ... :)
haha
Depends on me getting this to work. I am almost there thanks to you. If this works I will be set. The majority of the issues are set already.
Ok, some of these go into a new directory called "f226" but these 2 go into the main htaccess? Right?
Thanks
RichieBoy67
02-18-2014, 06:00 AM
No, this is not last question. I know ... :)
# First Lines:
Options +FollowSymLinks
RewriteEngine On
################################################## #########
#
# Attention!
# read this block carefully:
#
#
# At this put all lines which work with forumdisplay.php
#
#
# At this put all lines which work with showthread.php
#
################################################## #########
# Lines for new url with stars ***
Redirect 301 /f226/official-mecca-top-6-guess-rules-standings-thread-2013-a-220802/index2.html http://musclemecca.com/showthread.php/220802-***official-mecca-top-6-guess-rules-amp-standings-thread***-2013/page2
Redirect 301 /f226/official-mecca-top-6-guess-rules-standings-thread-2013-a-220802/index3.html http://musclemecca.com/showthread.php/220802-***official-mecca-top-6-guess-rules-amp-standings-thread***-2013/page3
Redirect 301 /f226/official-mecca-top-6-guess-rules-standings-thread-2013-a-220802 http://musclemecca.com/showthread.php/220802-***official-mecca-top-6-guess-rules-amp-standings-thread***-2013
# Line for thread which live in forums with this constuction: fxxx (f226)
RedirectMatch 301 ^/f([0-9]+)/([A-Za-z0-9-]+)-([0-9]+)/$ http://musclemecca.com/showthread.php/$2-$3
# Line for thread who did not get into any rule redirects
RedirectMatch 301 ^/([a-z-]+)-([0-9]+)/([a-z0-9-]+)-([0-9]+)$ http://musclemecca.com/showthread.php/$4
Do these go inside the forum directories or in the root htaccess?
Thanks!
vBulletin® v3.8.12 by vBS, Copyright ©2000-2025, vBulletin Solutions Inc.