The fact that your error message contains \n , an end of line marker, leads me to believe that your problem lies in the editor you are using. Your .htaccess file should be a plain text file in ASCII uploaded to your forum directory. Additionally, it should not all be smashed together as in your post - notice how there are tabs separating each part of a line in the tutorial?

Thank you! Now it works. It was the missing tab characters, because my browser, Opera 9, couldn't copy all the chars correctly.

Thanks again!

I've just applied the patch and I think there is a bug. When reading a thread, i.e. "thread203.html", when I change the style (from drop-down box on top-left), the link becomes "thread203.html?styleid=5", which shows exactly the same page with no style updated. I'm using vB 3.5.2. Is there any way to fix this?

You can see this at this link. Try changing the style on bottom-left.

P.S. Thanks a lot for the patch, very nice! ;)

Thanks! I will try this on vB 3.5.2 tonight!

Edit: The hook did not work for me :(

Thanks! I will try this on vB 3.5.2 tonight!

Edit: The hook did not work for me :(

Edit: Either did editing functions.php - It linked to the forum at forum1.html (for example) but when you click it, it 404'ed

I am going to update the original post to reflect this change.

Hi cscgal, none of those changes need to be made in the 3.5.x version do they?

g0rb4ch3v, did you create and upload the .htaccess file?

WebDressing: Yes, they do apply. If you installed this prior to December 4th, I suggest you make the update. => http://www.daniweb.com/techtalkforums/post178164-27.html. Otherwise, you should be fine.

WebDressing: Yes, they do apply. If you installed this prior to December 4th, I suggest you make the update.

OK thank you Dani, we'll look at that now.

I hope you have a wonderful holiday too ;)

Hi!

The hack is real good...i am working on implementing on my site which used vbulletin 3.0.3

I got the following error after uploading .htaccess file in the root folder of mysite.

----------
Internal Server Error

The server encountered an internal error or misconfiguration and was unable to complete your request.

Please contact the server administrator, and inform them of the time the error occurred, and anything you might have done that may have caused the error.

More information about this error may be available in the server error log.

----------

any inputs pls. to fix it?

Thank you.

Ensure the .htaccess file is EXACTLY as it looks, with no extra line breaks, and in plain text format. Also, you should have mod_rewrite compiled into your Apache installation (not sure how to do this one, sorry - most web servers have it already)

Ensure the .htaccess file is EXACTLY as it looks, with no extra line breaks, and in plain text format. Also, you should have mod_rewrite compiled into your Apache installation (not sure how to do this one, sorry - most web servers have it already)

That's wonderful! It's woring now.

Thank you very much.

cscgal, I guess the lack of responce to my previous post means that there is no way to fix the bug I mentioned? (wrong link in style selection when inside a forum)

Oh, sorry about that. I missed your question. Unfortunately, this is a known bug that I have yet to look into how to fix.

Unfortunately, this is a known bug that I have yet to look into how to fix.

I hope it's not very difficult to fix (from what I've observed, it only needs "styleid" variable to be parsed somewhere as well).

Actually not so. Because the URLs for the style dropdown are all created via PHP files. I would have to take a look at it to know how much needs to be changed.

im on 3.5.3 and when i look in functions.php i cant find the code you said and i did look at your 3rd post and i dont think i quite undrstand i see global_complete in the functions.php file but im not sure were to pt it in thee since the string is

{
		($hook = vBulletinHook::fetch_hook('global_complete')) ? eval($hook) : false;
	}

sorry if i have missed something very obvios here

and thats for the great sounding hack :cheesy:

Dani,

Your mod-rewrite is very good but it does leave some possibilties of duplicate content, which could result in Serps appearing slightly lower than they should do.

Would you be willing to re-code this slightly to fix the issues if i was to point out where the duplications are coming from?

I understand the search engines very well but i am afraid i am no good with mod-rewrites & i have been trying to look at your code & see how i might edit it myself but its a little over my head.

The first area is easy to fix & i was able to do this myself, its caused by simple naming conventions in your code - your current code produces two seperate URL's for forum threads. The first is in the latest thread shown on the homepage - the thread's URL is different if you enter by the forum.

To fix this just name this variable the same as thread in forums - easy.

The next two required fixes, i can't do myself.

1) The all posts by user contains an ankor link to the post, but this still uses the dynamic string - it should be the same URL as post ... html#post234 , etc
2) The Forum Jump still contains the dynamic URL's - these should also be changed to html because search engines can follow these links & index them.

I believe that fixing all these should stop any duplications, unless i have missed any scenerios in VB.

The result will be higher pagerank for the forums & higher Serps.

Edit: Either did editing functions.php - It linked to the forum at forum1.html (for example) but when you click it, it 404'ed

I as well get 404's with links to /forums/forum2.html for all my forums in vb 3.5.2. Htaccess file has been uploaded and everything seems right.

Anyone on this?

I still am not running 3.5, and therefore cannot vouch for it definitely working. It SHOULD work, and people have told me they were able to get this hack to work via 3.5 *without* using plugins, but that's as far as I know.

The last post in thread URL produced (lastpostinthreadXXX.html) simply 301 redirects to the appropriate threadXXX.html page. It doesn't create a duplicate of the thread. This is proper SEO convention. Having the # appending a URL does not create a new URL as does a query string. The search enginges understand it to be a reference to a particular area of the page.

The forum jump is entirely irrelevant because a jumpbox is a form, and search engines cannot fill out or submit forms. However, it would be nice to hack for standardization alone. However, the benefits don't really outweigh the need to php hack the darn thing.

testing hack on 3.5.4 forums, so far its working fine as mentioned above, shall do a little more testing and post the outcome.


Question 1:
Can you suggest some easier/quick way to add re-directions to a forum, re-directing all the incoming traffic from web to new locations after mod_rewrite

example:
re-directing a user from mydomain.com/forumdisplay.php?f=1 to mydomain.com/forum1.html
this should go for threads as well..

might help in restoring all the OLD PRs back again.

like SaN-DeeP said, it's working fine in vb 3.5.4, just need look for the following code at functions.php:

function print_output($vartext, $sendheader = true)
{
	global $pagestarttime, $querytime, $vbulletin;
	global $vbphrase, $stylevar;

and make the changes!
ty dani ;)

I as well get 404's with links to /forums/forum2.html for all my forums in vb 3.5.2. Htaccess file has been uploaded and everything seems right.

Anyone on this?

I'm running 3.5.2 as well - and I'm getting 404s as well. .htaccess is working correct, and the links are generating correctly /forums/forum5.html etc. but its not working :cry:

I'm gonna go try another hack instead I guess.

Update: Hook Method instructions

I can confirm that it works via the Hook system (www.fencing.net/forums/) is an example of this mod working live using the Hook method.

Using vBulletin 3.5.4

Thanks Dani!

Craig

Ok can some one please help me i have been at trying to sort this for 2 days lol, I have done the following


STEP 1: Create an .htaccess file in your forum directory and put the following into it:

Options +FollowSymLinks
RewriteEngine on
RewriteRule ^getdaily.html$ search.php?do=getdaily [L]
RewriteRule ^getdaily([0-9]+).html$ search.php?do=getdaily&f=$1 [L]
RewriteRule ^unanswered.html$ search.php?do=process&replyless=1&replylimit=0&dontcache=1	 [L]
RewriteRule ^unanswered([0-9]+).html$ search.php?do=process&replyless=1&replylimit=0&dontcache=1&forumchoice=$1&childforums=1 [L]
RewriteRule ^forum([0-9]+).html$		forumdisplay.php?f=$1		 [L]
RewriteRule ^forum([0-9]+)-([0-9]+)-([a-z]+)-(.*)-([0-9]+)-(.*).html$ forumdisplay.php?f=$1&page=$2&sort=$3&order=$4&pp=$5&daysprune=$6 [L]
RewriteRule ^forum([0-9]+)-(.*)-([a-z]+)-([a-z]+).html$	forumdisplay.php?f=$1&daysprune=$2&order=$3&sort=$4	 [L]
RewriteRule ^announcement([0-9]+).html$	 announcement.php?f=$1	 [L]
RewriteRule ^announcement([0-9]+)-([0-9]+).html$	announcement.php?f=$1&announcementid=$2 [L]
RewriteRule ^thread([0-9]+).html$	 showthread.php?t=$1	 [L]
RewriteRule ^thread([0-9]+)-([0-9]+).html$	showthread.php?t=$1&page=$2	 [L]
RewriteRule ^getnew.html$ search.php?do=getnew [L]
RewriteRule ^getnew([0-9]+).html$ search.php?do=getnew&f=$1 [L]
RewriteRule ^printthread([0-9]+).html$	printthread.php?t=$1	 [L]
RewriteRule ^sendthread([0-9]+).html$	sendmessage.php?do=sendtofriend&t=$1 [L]
RewriteRule ^referthread([0-9]+)-([0-9]+).html$ showthread.php?t=$1&referrerid=$2	[L]
RewriteRule ^lastpostinthread([0-9]+).html$ showthread.php?goto=lastpost&t=$1 [L]
RewriteRule ^newpostinthread([0-9]+).html$ showthread.php?goto=newpost&t=$1 [L]
RewriteRule ^nextnewesttothread([0-9]+).html$	showthread.php?t=$1&goto=nextnewest	[L]
RewriteRule ^nextoldesttothread([0-9]+).html$	showthread.php?t=$1&goto=nextoldest	[L]
RewriteRule ^post([0-9]+).html$	 showthread.php?p=$1	 [L]
RewriteRule ^post([0-9]+)-([0-9]+).html$	showpost.php?p=$1&postcount=$2	[L]
RewriteRule ^post([0-9]+)-([0-9]+)-([0-9]+).html$ showthread.php?p=$1&page=$2&pp=$3	[L]
RewriteRule ^thread([0-9]+)-([a-z]+).html$ showthread.php?mode=$2&t=$1	[L]
RewriteRule ^post([0-9]+)-([a-z]+).html$ showthread.php?p=$1&mode=$2	[L]

STEP 2:

In the includes/functions.php file, below

function print_output($vartext, $sendheader = 1)
{
global $pagestarttime, $query_count, $querytime, $DB_site, $bbuserinfo;
global $vbphrase, $vboptions, $stylevar, $_REQUEST;

in 3.0.7 (in another version of 3.0.x, just put the code below the global declarations in the print_output function) add:

// do Dani's SEO optimization
global $session;
 
$search_array = array(
'#<a ([^>]*)href' . preg_quote("=\"forumdisplay.php?$session[sessionurl]f=") . '([0-9]+)' . preg_quote("&amp;page=") . '([0-9]+)' . preg_quote("&amp;sort=") . '([a-z]*)' . preg_quote("&amp;order="). '([a-z]*)' . preg_quote("&amp;pp=") . '([0-9]*)' . preg_quote("&amp;daysprune="). '([^"]*)"#',
'#<a ([^>]*)href' . preg_quote("=\"forumdisplay.php?$session[sessionurl]f=") . '([0-9]+)' . preg_quote("&amp;daysprune=") . '([^"]*)' . preg_quote("&amp;order=") . '([a-z]*)' . preg_quote("&amp;sort=") . '([a-z]*)' . preg_quote("&amp;pp=") . '([0-9]*)' . preg_quote("&amp;page=") . '([0-9]+)"#',
'#<a ([^>]*)href' . preg_quote("=\"forumdisplay.php?$session[sessionurl]f=") . '([0-9]+)' . preg_quote("&amp;daysprune=") . '([^"^&]*)' . preg_quote("&amp;order=") . '([a-z]*)' . preg_quote("&amp;sort=") . '([a-z]*)"#',
'#<a ([^>]*)href' . preg_quote("=\"forumdisplay.php?$session[sessionurl]f=") . '([0-9]+)' . preg_quote("&amp;daysprune="). '([^"^&]*)"#',
'#<a ([^>]*)href' . preg_quote("=\"forumdisplay.php?$session[sessionurl]f=") . '([0-9]+)' . preg_quote("&amp;page=") . '([0-9]+)"#',
'#<a ([^>]*)href' . preg_quote("=\"forumdisplay.php?$session[sessionurl]f=") . '([0-9]+)"#',
'#<a ([^>]*)href' . preg_quote("=\"showthread.php?$session[sessionurl]t=") . '([0-9]+)' . preg_quote("&amp;page=") . '([0-9]*)' . preg_quote("&amp;pp=") . '([0-9]+)"#',
'#<a ([^>]*)href' . preg_quote("=\"showthread.php?$session[sessionurl]t=") . '([0-9]+)' . preg_quote("&amp;page=") . '([0-9]+)"#',
'#<a ([^>]*)href' . preg_quote("=\"showthread.php?$session[sessionurl]t=") . '([0-9]+)"#',
'#<a ([^>]*)href' . preg_quote("=\"showthread.php?$session[sessionurl]goto=lastpost&amp;t=") . '([0-9]+)"#',
'#<a ([^>]*)href' . preg_quote("=\"showthread.php?$session[sessionurl]goto=newpost&amp;t=") . '([0-9]+)"#',
'#<a ([^>]*)href' . preg_quote("=\"printthread.php?$session[sessionurl]t=") . '([0-9]+)"#',
'#<a ([^>]*)href' . preg_quote("=\"sendmessage.php?$session[sessionurl]do=sendtofriend&amp;t=") . '([0-9]+)"#', 
'#<a ([^>]*)href' . preg_quote("=\"showthread.php?$session[sessionurl]t=") . '([0-9]+)' . preg_quote("&amp;goto=next"). '([a-z]+)"#',
'#<a ([^>]*)href' . preg_quote("=\"showthread.php?$session[sessionurl]p=") . '([0-9]+)"#',
'#<a ([^>]*)href' . preg_quote("=\"showthread.php?$session[sessionurl]p=") . '([0-9]+)' . preg_quote("&amp;page=") . '([0-9]+)' . preg_quote("&amp;pp=") . '([0-9]+)"#',
'#<a ([^>]*)href' . preg_quote("=\"showpost.php?$session[sessionurl]p=") . '([0-9]+)' . preg_quote("&amp;postcount=") . '([0-9]+)"#', 
'#<a ([^>]*)href' . preg_quote("=\"showthread.php?$session[sessionurl]mode=") . '([a-z]+)' . preg_quote("&amp;t=") . '([0-9]+)"#',
'#<a ([^>]*)href' . preg_quote("=\"showthread.php?$session[sessionurl]p=") . '([0-9]+)' . preg_quote("&amp;mode=") . '([a-z]+)\##', 
 
'#<a ([^>]*)href' . preg_quote("=\"announcement.php?$session[sessionurl]f=") . '([0-9]+)' . preg_quote("&amp;announcementid=") . '([0-9]+)"#',
'#<a ([^>]*)href' . preg_quote("=\"announcement.php?$session[sessionurl]f=") . '([0-9]+)"#',
 
// sanitizing
'#<a ([^>]*)href\=\"([^"]*)&amp;page=([^"]*).html"#',
'#<a ([^>]*)href\=\"([^"]*)&amp;highlight=([^"]*).html"#',
 
// other
'#<a ([^>]*)href' . preg_quote("=\"search.php?$session[sessionurl]do=getdaily&amp;f=") . '([0-9]*)"#',
'#<a ([^>]*)href' . preg_quote("=\"search.php?$session[sessionurl]do=getdaily") . '"#',
'#<a ([^>]*)href' . preg_quote("=\"search.php?$session[sessionurl]do=process&amp;replyless=1&amp;replylimit=0&amp;dontcache=1&amp;forumchoice=&amp;childforums=1") . '"#',
'#<a ([^>]*)href' . preg_quote("=\"search.php?$session[sessionurl]do=process&amp;replyless=1&amp;replylimit=0&amp;dontcache=1&amp;forumchoice=") . '([0-9]+)' . preg_quote("&amp;childforums=1") . '"#'
 
);
$replace_array = array(
'<a \1href="forum\2-\3-\4-\5-\6-\7.html"',
'<a \1href="forum\2-\7-\5-\4-\6-\3.html"',
'<a \1href="forum\2-\3-\4-\5.html"',
'<a \1href="forum\2-\3.html"',
'<a \1href="forum\2-\3.html"',
'<a \1href="forum\2.html"',
'<a \1href="thread\2-\3.html"',
'<a \1href="thread\2-\3.html"',
'<a \1href="thread\2.html"',
'<a \1href="lastpostinthread\2.html"',
'<a \1href="newpostinthread\2.html"',
'<a \1href="printthread\2.html"',
'<a \1href="sendthread\2.html"',
'<a \1href="next\3tothread\2.html"', 
'<a \1href="post\2.html"', 
'<a \1href="post\2-\3-\4.html"', 
'<a \1href="post\2-\3.html"', 
'<a \1href="thread\3-\2.html"', 
'<a \1href="post\2-\3.html#', 
 
'<a \1href="announcement\2-\3.html"',
'<a \1href="announcement\2.html"',
 
// sanitizing
'<a \1href="\2-\3.html"',
'<a \1href="\2-\3.html"',
 
// other
'<a \1href="getdaily\2.html"',
'<a \1href="getdaily.html"',
'<a \1href="unanswered.html"',
'<a \1href="unanswered\2.html"'
 
);
$vartext = preg_replace($search_array, $replace_array, $vartext);

i have vBulletin Version 3.0.7 but i get this error msg

Parse error: parse error, unexpected T_CONSTANT_ENCAPSED_STRING in /homepages/22/d122080877/htdocs/mkpitstop/forum/includes/functions.php on line 2094

please could some one tell me what i might have done wrong :-|

Greetings I won't even try to pretend I know even the slightest amount of this all though it is intriguing to say the least.
Just checking to see if I understand this prior to attempting and sorry for newbie question.
Currently running vb 3.5.3
Please correct me if I'm wrong in these steps.
(1)Create .htaccess file and add to root folder
(2)Locate

function print_output($vartext, $sendheader = true)
{
global $pagestarttime, $querytime, $vbulletin;
global $vbphrase, $stylevar;

then add below

//do Dani's SEO optimization
global $session;

$search_array = array(
'#<a ([^>]*)href' . preg_quote("=\"forumdisplay.php?$session[sessionurl]f=") . '([0-9]+)' . preg_quote("&amp;page=") . '([0-9]+)' . preg_quote("&amp;sort=") . '([a-z]*)' . preg_quote("&amp;order="). '([a-z]*)' . preg_quote("&amp;pp=") . '([0-9]*)' . preg_quote("&amp;daysprune="). '([^"]*)"#',
'#<a ([^>]*)href' . preg_quote("=\"forumdisplay.php?$session[sessionurl]f=") . '([0-9]+)' . preg_quote("&amp;daysprune=") . '([^"^&]*)' . preg_quote("&amp;order=") . '([a-z]*)' . preg_quote("&amp;sort=") . '([a-z]*)"#',
'#<a ([^>]*)href' . preg_quote("=\"forumdisplay.php?$session[sessionurl]f=") . '([0-9]+)' . preg_quote("&amp;daysprune="). '([^"^&]*)"#',
'#<a ([^>]*)href' . preg_quote("=\"forumdisplay.php?$session[sessionurl]f=") . '([0-9]+)' . preg_quote("&amp;page=") . '([0-9]+)"#',
'#<a ([^>]*)href' . preg_quote("=\"forumdisplay.php?$session[sessionurl]f=") . '([0-9]+)"#',
'#<a ([^>]*)href' . preg_quote("=\"showthread.php?$session[sessionurl]t=") . '([0-9]+)' . preg_quote("&amp;page=") . '([0-9]*)' . preg_quote("&amp;pp=") . '([0-9]+)"#',
'#<a ([^>]*)href' . preg_quote("=\"showthread.php?$session[sessionurl]t=") . '([0-9]+)' . preg_quote("&amp;page=") . '([0-9]+)"#',
'#<a ([^>]*)href' . preg_quote("=\"showthread.php?$session[sessionurl]t=") . '([0-9]+)"#',
'#<a ([^>]*)href' . preg_quote("=\"showthread.php?$session[sessionurl]goto=lastpost&amp;t=") . '([0-9]+)"#',
'#<a ([^>]*)href' . preg_quote("=\"showthread.php?$session[sessionurl]goto=newpost&amp;t=") . '([0-9]+)"#',
'#<a ([^>]*)href' . preg_quote("=\"printthread.php?$session[sessionurl]t=") . '([0-9]+)"#',
'#<a ([^>]*)href' . preg_quote("=\"sendmessage.php?$session[sessionurl]do=sendtofriend&amp;t=") . '([0-9]+)"#', 
'#<a ([^>]*)href' . preg_quote("=\"showthread.php?$session[sessionurl]t=") . '([0-9]+)' . preg_quote("&amp;goto=next"). '([a-z]+)"#',
'#<a ([^>]*)href' . preg_quote("=\"showthread.php?$session[sessionurl]p=") . '([0-9]+)"#',
'#<a ([^>]*)href' . preg_quote("=\"showthread.php?$session[sessionurl]p=") . '([0-9]+)' . preg_quote("&amp;page=") . '([0-9]+)' . preg_quote("&amp;pp=") . '([0-9]+)"#',
'#<a ([^>]*)href' . preg_quote("=\"showpost.php?$session[sessionurl]p=") . '([0-9]+)' . preg_quote("&amp;postcount=") . '([0-9]+)"#', 
'#<a ([^>]*)href' . preg_quote("=\"showthread.php?$session[sessionurl]mode=") . '([a-z]+)' . preg_quote("&amp;t=") . '([0-9]+)"#',
'#<a ([^>]*)href' . preg_quote("=\"showthread.php?$session[sessionurl]p=") . '([0-9]+)' . preg_quote("&amp;mode=") . '([a-z]+)\##', 

'#<a ([^>]*)href' . preg_quote("=\"announcement.php?$session[sessionurl]f=") . '([0-9]+)' . preg_quote("&amp;announcementid=") . '([0-9]+)"#',
'#<a ([^>]*)href' . preg_quote("=\"announcement.php?$session[sessionurl]f=") . '([0-9]+)"#',

// sanitizing
'#<a ([^>]*)href\=\"([^"]*)&amp;page=([^"]*).html"#',
'#<a ([^>]*)href\=\"([^"]*)&amp;highlight=([^"]*).html"#',

// other
'#<a ([^>]*)href' . preg_quote("=\"search.php?$session[sessionurl]do=getdaily&amp;f=") . '([0-9]*)"#',
'#<a ([^>]*)href' . preg_quote("=\"search.php?$session[sessionurl]do=getdaily") . '"#',
'#<a ([^>]*)href' . preg_quote("=\"search.php?$session[sessionurl]do=process&amp;replyless=1&amp;replylimit=0&amp;dontcache=1&amp;forumchoice=&amp;childforums=1") . '"#',
'#<a ([^>]*)href' . preg_quote("=\"search.php?$session[sessionurl]do=process&amp;replyless=1&amp;replylimit=0&amp;dontcache=1&amp;forumchoice=") . '([0-9]+)' . preg_quote("&amp;childforums=1") . '"#'

);
$replace_array = array(
'<a \1href="forum\2-\3-\4-\5-\6-\7.html"',
'<a \1href="forum\2-\3-\4-\5.html"',
'<a \1href="forum\2-\3.html"',
'<a \1href="forum\2-\3.html"',
'<a \1href="forum\2.html"',
'<a \1href="thread\2-\3.html"',
'<a \1href="thread\2-\3.html"',
'<a \1href="thread\2.html"',
'<a \1href="lastpostinthread\2.html"',
'<a \1href="newpostinthread\2.html"',
'<a \1href="printthread\2.html"',
'<a \1href="sendthread\2.html"',
'<a \1href="next\3tothread\2.html"', 
'<a \1href="post\2.html"', 
'<a \1href="post\2-\3-\4.html"', 
'<a \1href="post\2-\3.html"', 
'<a \1href="thread\3-\2.html"', 
'<a \1href="post\2-\3.html#', 

'<a \1href="announcement\2-\3.html"',
'<a \1href="announcement\2.html"',

// sanitizing
'<a \1href="\2-\3.html"',
'<a \1href="\2-\3.html"',

// other
'<a \1href="getdaily\2.html"',
'<a \1href="getdaily.html"',
'<a \1href="unanswered.html"',
'<a \1href="unanswered\2.html"'

);
$vartext = preg_replace($search_array, $replace_array, $vartext);

Is this correct in my interpretation of this and is there any thing else I should be aware of for 3.5?
Thank you in advance

Excellent hack... Thanks Dani :)

Just a quick question... Should I get rid of the VB archive? I guess it will be useless and may be considered as duplicate content e.g. http://www.daniweb.com/techtalkforums/archive/

Secondly, how can I make the forum title (not thread title) to show in URL instead of "forumxxx.html" I can see you already have done this with this forum e.g. http://www.daniweb.com/techtalkforums/thread35147.html

Thanks once again for the great hack :)

Cheers,
Sync

Hi Dani,

I'm currently using 3.0.7 and your previous hack version. I mean "Mod re-write for 3.0.7"

Now, I'll upgrade to 3.5.4 and will use this "dirty" one :)

Yet, I tried this hack on my testing forum, and there are some differences from my current seo hack. My current hack's urls are like this, when navigating pages of a thread:

http://www.example.com/forum/threadnav1240-2-10.html

But this one is: http://www.example.com/forum/thread1240-2.html

As google indexed thousands of pages with threadnav1240-2-10.html style, I have a really big problem.

How can we fix it?

Thanks.

Hi Dani,

I'm currently using 3.0.7 and your previous hack version. I mean "Mod re-write for 3.0.7"

Now, I'll upgrade to 3.5.4 and will use this "dirty" one :)

Yet, I tried this hack on my testing forum, and there are some differences from my current seo hack. My current hack's urls are like this, when navigating pages of a thread:

http://www.example.com/forum/threadnav1240-2-10.html

But this one is: http://www.example.com/forum/thread1240-2.html

As google indexed thousands of pages with threadnav1240-2-10.html style, I have a really big problem.

How can we fix it?

Thanks.

Ok, I made it.

Adding this string to the .htaccess, I made my former urls accessible through Google though.

RewriteRule ^threadnav([0-9]+)-([0-9]+)-10.html$	showthread.php?t=$1&page=$2	 [L]

Hi Dani,

My ForumDisplay's numbered pages are unfortunately .php unlike yours. I mean, when I go to the 2nd page of any of my forums I see complicated php pages. How can I change this?

Thanks.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.