Welcome to WebmasterWorld Guest from 23.22.200.6

Forum Moderators: Ocean10000 & incrediBILL & phranque

Message Too Old, No Replies

Mod rewrite

Which URL is listed on search engines?

     
1:43 pm on Sep 23, 2002 (gmt 0)

Preferred Member

10+ Year Member

joined:July 26, 2002
posts:535
votes: 0


If I have a page on a site with a link to shortpage1.html, and I use Apache's mod rewrite to redirect page requests to longpage1.html, when the page is spidered, which of the URLs will be listed on search engines?

If the answer is longpage1.html, is there a method to get shortpage1.html listed?

4:43 pm on Sept 23, 2002 (gmt 0)

Administrator

WebmasterWorld Administrator jatar_k is a WebmasterWorld Top Contributor of All Time 10+ Year Member

joined:July 24, 2001
posts:15755
votes: 0


Yes, the method is to not use mod_rewrite. The spider can only list what it sees, if you rewrite the url it will list whatever url it gets.
4:55 pm on Sept 23, 2002 (gmt 0)

Senior Member

WebmasterWorld Senior Member 10+ Year Member

joined:Sept 21, 1999
posts:2141
votes: 0


If my understanding is correct, mod_rewrite allows you to choose whether a visitor sees the "old" or "new" URL. Take a look at the section entitled "Content Handling" in this doc [httpd.apache.org]. I think if you choose to do an "internal redirect" the "old" URL is presented to the visitor and an "external redirect" presents the "new" URL.

<added>BTW, welcome to WebmasterWorld! :) </added>

10:13 am on Sept 24, 2002 (gmt 0)

Preferred Member

10+ Year Member

joined:July 26, 2002
posts:535
votes: 0


Hmmm...

Spent a few hours on this last night. Dave's suggestion worked, but with an external redirect (needed in this scenario) the page was returned with a 302 http status code. I couldn't find a way of changing this to the needed 200 OK code - sending a header using PHP didn't seem to work. If anyone knows a way round this, I'd love to know.

I've compromised on a 404 error trap, most often used on database sites to alter dynamic URLs. I seem to be able to rewrite the http code from 404 to 200 with no problem using this technique.

Both shortpage1.html and longpage1.html are sent to the custom 404 page, which will resolve the same content for both. The only difference is a robots metatag added to the page if shortpage1.html is used to prevent the spidering of duplicate pages if a link to shortpage1.html ever got out into the wild.

This isn't an answer to my initial question, but solves a few of the problems which prompted me to ask it in the first place.

2:45 pm on Sept 24, 2002 (gmt 0)

Senior Member

WebmasterWorld Senior Member 10+ Year Member

joined:Sept 21, 1999
posts:2141
votes: 0


According to the Apache mod_rewrite docs you can select the error value returned when using the external redirection flag as in "R=301". Check the flags section under the RewriteRule directive in this doc [httpd.apache.org].
2:57 pm on Sept 24, 2002 (gmt 0)

Preferred Member

10+ Year Member

joined:July 26, 2002
posts:535
votes: 0


Yeah, that doc states that you can alter the code between 300-400. This I can do, and it works as advertised. However, if I stray outside that range to let's say... 200 - no dice. The response code reverts back to 302.
 

Join The Conversation

Moderators and Top Contributors

Hot Threads This Week

Featured Threads

Free SEO Tools

Hire Expert Members