301 Redirect with index.asp
-
I am very new to all of this so forgive the newbie questions I will get better. Ok so after starting a campaign I see that I have many issues including where some pages are being deemed as duplicate content.
1. The report says the http://lucid8.com has duplicate content on 2 other pages
2. When I look at them it shows that http://lucid8.com/index.asp and http://www.lucid8.com are duplicates.
3. Really these are the exactly the same page because the default page that is opened for www.lucid8.com http://www.lucid8.com etc always opens the index.asp page.
4. Now I read that I should do permanent redirects and how to do this via IIS and I tried to do a redirect from index.asp to www.lucid8.com but that does not work because www.lucid8.com is pointing to index.asp and so we end up in a circle.
So the question is how do I get rid of these duplicate page references without causing problems.
Thanks
-
Yeah a major pain and went round and round since it was happening on all machines. Once I got a machine that didn't do it it got me thinking..
Anyway hope it helps others in the future
-
That's brutal! I've seen something like that happen watching the HTTP responses via httpfox sometimes, where I've made a change on the server to a redirection and not seeing it in the browser.
-
Hey thought that I would also mention that the issue where it was referring from Lucid8.com to Https://Lucid8.com was actually a bug in firefox. Apparently FF has a bug where IF you ever went to say Https://Lucid8.com in the past, even though you enter lucid8.com it will autocorrect upon submission and send you to Https://Lucid8.com
They say that removing the HTTPS items from history will fix it, but in my case it did not and instead I had to export all my bookmarks, kill off the profile and then import the bookmarks again and now all is well.
-
Good, I'm glad you got this all working. MC
-
ok so I figured out a workaround since it appears that because I am on IIS6 the web.config is a but finicky aka may or may not work for redirection. Anyway I used the information in this link http://johnnycode.com/2012/01/04/in-iis6-http-301-redirect-from-non-www-to-www/ to create a now non-www site and point it to the www site and all seems to be working well, expect if a person puts in a HTTPS within the WWW but that should be a really rare event so I am not going to hassle with it. I also got rid of the relative URLS on the website and made them all explicit.
Fingers crossed that next run will show this issue is cleaned up....
Thanks for all your help and patience
-
Sounds like something in a web.config file. Is there possibly a web.config file in a higher-level folder?
Or, perhaps there's an IIS plugin that you're using that is doing this?
-
Yup something very strange. So it appears that
1. the redirect code in the web.config does not work
2. I may have something else going on because whenever I enter lucid8.com it redirects to https://www.lucid8.com so wondering if you have any ideas as to how I might track down WHAT exactly is making the page change to from Lucid8.com to https://www.lucid8.com???
-
Yes, that looks to me like 2 clues that both say that the web.config isn't being read for some reason.
-
Hmm well no all seems to be working well here, although the code in the web.config doesn't seem to be working for redirects, i.e. I can put in lucid8.com and it does not change to www.lucid8.com so maybe its not picking up the changes in web.config?
-
If your default document is index.asp, and you're redirecting index.asp to /, then I would expect you'd get an infinite redirection loop.
-
Sorry for the delayed response, been buried putting out other fires. That said
1. The web.config has the following in place so it refers to /
<rewritemaps><rewritemap name="Redirect"><add key="/index.asp" value="/"></add></rewritemap></rewritemaps>
2. All of my menu systems and links now reference the home page as www.lucid8.com or as / which I assume should not be an issue?
3. The only issue outstanding is your recommendation to
A: copy index.asp to home.asp
B: then would I strip the entire contents from index.asp and put some type of code within to tell it to look at home.asp? if so any help you have here would be appreciated.
NOTE: I am still a bit lost as to why I would have to do 3.a & b since steps 1 & 2 would seem to resolve the issue, but perhaps I am missing a critical point?
-
Sorry for the delay in response, had another fire to deal with....
Anyway I put this in place and it just doesn't seem to work, i.e.
1. if I put in lucid8.com I would expect it to correct itself to www.lucid8.com or http://www.lucid8.com however instead it just opens the page and keeps lucid8.com in the URL. Any ideas here?
2. I also notice that from that point on when I click to navigate to another place on the site that the URL stays without the www and I am going to guess that is because some of the pages have ABSOLUTE paths, i.e. www.lucid8.com/purchase/login.asp while others are relative, i.e /purchase/login.asp
So I guess two questions here i.e.
A: any idea how to track down why the redirect in the web.config is not working?
B: if we get # 1 working will it solve the # 2 issue or do we need to change all relative paths to absolute?
thanks
-
Excellent Info
thanks
-
You're pretty much on track with this now. The key points are:
- nothing outside of your web config file should be aware of what your home page's file name actually is
- Googlebot, your menu, etc. should all see your home page as /
- any existing links to index.asp should be 301 redirected to / to consolidate the link juice
And, the reason you're renaming index.asp to something else is that otherwise you'd have an infinite redirection loop of index.asp -> / -> gets resolved to index.asp -> / -> ....
-
I'll second Mike's comment about using Screaming Frog to test immediately.
The only thing I'll add is that it's worth doing an httpfox test of one example page to make sure you don't have a chain of redirects from your combinations of rules--Screaming Frog will just show you 1 of the response codes per page (it's unclear to me if it's the first or the the last response code). You'll catch things like one of the redirects in the chain being a 302 not a 301 (for instance, a basic Response.Redirect in the ASP code itself does a 302, not a 301!).
-
MatchAll means that all of the conditions must be met for the rule to process. It has nothing to do with case sensitivity.
Give this a whirl (I added your example of including a purchase folder in the rule):
<system.webserver><rewrite><rewritemaps><rewritemap name="Redirect"><add key="/index.asp" value="/"></add></rewritemap></rewritemaps>
<rules><rule name="CanonicalHostNameRule" enabled="true"><match url="(.)"><conditions logicalgrouping="MatchAll" trackallcaptures="false"><add input="{HTTPS}" pattern="^ON$">
<add input="{HTTP_HOST}" pattern="^www.lucid8.com$" negate="true"></add></add></conditions>
<action type="Redirect" url="<a href=" http:="" www.lucid8.com="" {r:1"="">http://www.lucid8.com/{R:1}" redirectType="Permanent" />
</action></match></rule>
<rule name="AllHTTPexceptSIGNIN" stopprocessing="true"><conditions><add input="{HTTP_HOST}" pattern="<a href=" http:="" (www.)(.)$"="">http://(www.)(.*)$" negate="true" />
<add input="{HTTPS}" pattern="on"><add input="{URL}" pattern="download" negate="true"><add input="{URL}" pattern="purchase" negate="true"></add></add></add></add></conditions>
<action type="Redirect" url="<a href=" http:="" {http_host}="" {r:0"="">http://{HTTP_HOST}/{R:0}" redirectType="Permanent"/>
</action></rule></rules></rewrite></system.webserver> -
ok thats great information since we only have a few sections where HTTPS is enforced and the cleaner I can make things the better.
That said here is what I have now in my web.config file so
1. how would I best integrate what you have above with this?
2. As I add new sections for HTTPS is it a single line for each new pattern, i.e. like "purchase" for example.
3. Am I correct that the "MatchAll" is for non case sensitivity?
<system.webserver><rewrite><rewritemaps><rewritemap name="Redirect"><add key="/index.asp" value="/"></add></rewritemap></rewritemaps>
<rules><rule name="CanonicalHostNameRule" enabled="true"><match url="(.*)"><conditions logicalgrouping="MatchAll" trackallcaptures="false"><add input="{HTTPS}" pattern="^ON$"><add input="{HTTP_HOST}" pattern="^www.lucid8.com$" negate="true"></add></add></conditions>
<action type="Redirect" url="http://www.lucid8.com/{R:1}" redirecttype="Permanent" =""></action></match></rule></rules></rewrite></system.webserver> -
Excellent information and it appears that today is my next crawl date. I will also take a look at screaming frog to see what it is all about. Thanks much for all your help and insight its invaluable. I am stuck trying to do this myself because of budgetary reasons and also my past experience with so called SEO experts was not so great... Lots of posers out there, however tools like this and these message boards make it much better and also easier to find other people to work with in the future.
Thanks again Mike
Troy
-
If you go to your campaign overview page, you will see a little box below the mini overviews that will say something like, "Last Crawl Completed: Apr. 3rd, 2013 Next Crawl Starts: Apr. 10th, 2013"
I personally use SEOmoz PRO tools in combination with Screaming Frog. I verify many of the problems using Screaming Frog, then fix them, then rescan (which is instant), then wait for my SEOmoz PRO tools to reflect my changes. SEOmoz does a great job of warning you and keeping you in the know... where Screaming Frog gives you a lot of information, but you really have to know what you are looking for and would have to keep on top of it... SEOmoz is more automated... if that makes sense.
Mike
-
The only thing that can happen is if Google indexes an http and https version of the same page. It isn't a HUGE deal... just depends on how obsessed you are about the site structure.
You could potentially have visitors start linking to the https version vs the http version, in which case that would be a problem.
Depending on the complexity of your site and code, this rule may be able to help you... where it says, pattern="download" that means that if someone visits the downloads section of your website, it will allow for https. You can continue to add additional folders by just repeating that code and replacing "download" with whatever the folder names are that you want to allow to use HTTPS. I did a Google search of site:lucid8.com inurl:https and noticed that your download section was indexed as using HTTPS, that is why I used it in this example.
If you are just using simple folder structures, this rule is not too bad to implement. I previously just implemented it with pattern matching and that was not fun.
Any way, if it helps great, if not, just try to keep your internal linking as consistent as possible. Sometimes the best way to do this is use absolute paths vs relative.
Mike
<rule name="AllHTTPexceptSIGNIN" stopprocessing="true"><conditions><add input="{HTTP_HOST}" pattern="<a href=" http:="" (www.)(.)$"="">http://(www.)(.)$" negate="true" />
<add input="{HTTPS}" pattern="on"><add input="{URL}" pattern="download" negate="true"></add></add></add></conditions>
<action type="Redirect" url="<a href=" http:="" {http_host}="" {r:0"="">http://{HTTP_HOST}/{R:0}" redirectType="Permanent"/>
</action></rule> -
So the weekly scan from SEOmoz, will that happen one week from the original scan date or? And if so will the campaign show when the scan has been updated or will I get a notification that its been updated or??
Just trying to figure out how to best use the tool and how long to wait for changes to appear in SEOmoz before I can mark an issue internally as being resolved so I can move on to the others
-
ok so I corrected all the internal references by taking out the explicit use of index.asp so moving forward that would seem to be solved.
However that said is the premise here that index.asp is already seen as a separate page from www.lucid8.com and therefore should become the reference page to a copy of itself called home.asp or whatever so that anything out there pointing to index.asp will now get consolidated into the new home.asp file and that when that happens it will resolve any issue with the search engines thinking that www.lucid8.com and www.lucid8.com/index.asp are different?
-
We do use HTTPS in different sections on the site. I played with a few things however it appears that unless you get complex there is no easy way to ensure the proper pages go to HTTP or HTTPS so will leave as the default of HTTPS now since it clearly does no harm in opening a non HTTPS page as HTTPS unless there is something I am missing??
-
You can thoroughly test these your self using the Firefox plugin httpfox.
The advantage this particular tool has over pretty much everything else is that you see not only the LAST http response code, but the entire chain.
I've answered private Q&A questions here from people where Google was seeing one of the response codes in the chain, but other tools were seeing a different one. If I remember correctly, it was a chain of 301s and 302s.
You want (ideally) a SINGLE 301; if you cannot make that happen, then a chain of 301s, with no 302s or 404s in the middle.
-
Cool. Glad to help.
Taking care of https is another rule that you would need to implement. This can be a bit more tricky if your site uses https for other purposes (such as signing in or a checkout process, etc.)
If you do not use https anywhere on your site, I can probably come up with some code that would work for you.
The SEOmoz scan is done on a weekly basis, so there isn't much you can do there. And as for other tools to do these scans, you really cannot get the level of detail in a user-friendly manner that SEOmoz provides - in my opinion.
Mike
-
Mike I think that did the trick, which is awesome!!! I validated the results by entering lucid8.com and it redirected me, however it added HTTPS vs the default of HTTP i.e. i got https://www.lucid8.com/ vs. http://www.lucid8.com/
Therefore;
1. Does the code above need to be modified or do I need to change some other setting
2. Is there a more robust way of validating these resolutions, i.e. if I do a new scan with SEOmoz will it immediately report that the issues have been fixed or ??? OR are there other methods to ensure I fixed these two issues completely?
-
If you are using IIS, then you would want to configure these fixes in your web.config file.
I think you'd want something like this:
<configuration><system.webserver><rewrite><rewritemaps><rewritemap name="Redirect"><add key="/index.asp" value="/"></add></rewritemap></rewritemaps>
<rules><rule name="CanonicalHostNameRule" enabled="true"><match url="(.*)"><conditions logicalgrouping="MatchAll" trackallcaptures="false"><add input="{HTTP_HOST}" pattern="^www.lucid8.com$" negate="true"></add></conditions>
<action type="Redirect" url="http://www.lucid8.com/{R:1}"></action></match></rule></rules></rewrite></system.webserver></configuration>If that does not work, I would recommend breaking it into sections - for example, try doing the redirect code first, then the canonical code second, or vise versa. I always look up examples of web.config configurations on stackoverflow.com.
Hope this helps Troy.
Mike
-
FYI you'll want to rename index.asp to something else, and then change the default document to point to the new filename (e.g. "home.asp"), then 301 redirect index.asp to /. This will consolidate any link juice currently going to index.asp onto your one real home page, "/".
When you think you're all done, then use the Firefox plugin HTTPfox to see your entire HTTP response code stream when you hit index.asp, the non-www version of your site, etc. You're looking to see a single 301 redirect for each.
-
-
BTW I Googled the issue and then poked around IIS on could not find any type of duplicate entry for www vs non www, however perhaps I am missing something simple? The entry that I have for the main site doesn't seem to say whether its for WWW or Non-WWW either so?
Also read an article that said this might be the cause of a duplicate DNS entry, i.e. one for WWW and one for non WWW??
-
Mike sorry for the delay in response....
I am using IIS on a Windows 2003 Server
-
That is a change you will make on your server.
Depending on the backend software you use, the code or setting to implement this type of change will be different.
What software do you use?
Mike
-
Great info thanks guys and
1. I found and corrected the /index.asp issue and am searching to ensure that issue is resolved on all other pages as well
2. Regarding the http://lucid8.com and http://www.lucid8.com I am confused as to where this is set or how to adjust. Can you provide any additional hints as to how I should address this?
Thanks to both of you this has been a great help!
-
excellent catch, Mike. He's absolutely correct about the index.asp page.
these two fixes should really help your site.
-
Hi Troy,
The issue with /index.asp is coming up because of your Home link in your footer. Instead of resolving to home "/" it is being pointed to "/index.asp".
And the reason it is also showing the www-version is because when the crawler is on lucid8.com and it crawls the link to the right of customer/partner login "customers", the crawler is brought to www.lucid8.com/downloadplus/Resource_login.asp Then, from here, if you click on any of the hyperlinks, you are brought to the www-version of the page instead of the non-www you specified as your preferred.
Jesse is correct in saying you need to choose either a www or non-www version; however, you also need to fix the /index.asp issue.
Hope this helps.
Mike
-
i think that because you said "http://lucid8.com/index.asp and http://www.lucid8.com are duplicates" your issue might actually be in the www and non-www canonicalization of your site.
Make sure that you pick one or the other (i recommend www) and in your IIS server settings redirect the non-www to the www. (or vice versa if you must)
This should solve your problem.
**update -- I just went to your site and yes this is happening. You have two sites going, http://lucid8.com and http://www.lucid8.com. The "index.asp" portion of it actually has nothing to do with this. But Google is currently seeing each version as two separate pages, resulting in duplicates of every page on that domain.
Definitely add the 301 redirect in your IIS settings to one or the other. A linkrel=canonical tag wouldn't hurt on each page either, but isn't necessary.
Good luck
Got a burning SEO question?
Subscribe to Moz Pro to gain full access to Q&A, answer questions, and ask your own.
Browse Questions
Explore more categories
-
Moz Tools
Chat with the community about the Moz tools.
-
SEO Tactics
Discuss the SEO process with fellow marketers
-
Community
Discuss industry events, jobs, and news!
-
Digital Marketing
Chat about tactics outside of SEO
-
Research & Trends
Dive into research and trends in the search industry.
-
Support
Connect on product support and feature requests.
Related Questions
-
To 301 or not to 301?
So, to cut a long story short, on our website we have a /product page that is very similar to our homepage and doesn't really serve much of a purpose. It doesn't really fit in with the rest of the website and our directors want to get rid of it and focus our efforts on our homepage. Problem is, the /product page has a little bit of PA and links to other important pages on the website. I personally don't want to completely cut this page off. Would a 301 redirect to the homepage be a good option or would I be better off redirecting users to our course library page (Our course pages are what bring in most of our organic traffic)? Any help or other suggestions would be appreciated here! http://www.ihasco.co.uk/
Technical SEO | | iHasco1 -
How to know what pages are 301 redirecting to me?
Hi! It is easy to know if somebody is spam linking your website, looking i.e., looking at open site explorer to analyse the links profile. But, is it possible to know if a competitor of mine is redirecting a bad domain to main with a 301 redirect, thus transfering any bad SEO reputation to me? Best Regards, Daniel
Technical SEO | | te_c0 -
Can I remove 301 redirects after some time?
Hello, We have an very large number of 301 redirects on our site and would like to find a way to remove some of them. Is there a time frame after which Google does not need a 301 any more? For example if A is 301 redirected to B, does Google know after a while not to serve A any more, and replaces any requests for A with B? How about any links that go to A? Or: Is the only option to have all links that pointed to A point to B and then the 301 can be removed after some time? Thank you for you you help!
Technical SEO | | Veva0 -
301 redirect domain to page on another domain
Hi, If I wanted to do a 301 permanent redirect on a domain to a page on another domain will this cause any problems? Lets say I have 4 domains (all indexed with content), I decide to create a new domain with 4 pages, one for each domain. I copy the content from the old domains to the relevant page on the new domain and set it live. At the same time as setting the new site live I do a 301 permanent redirect on the 4 domains to the relevant pages on the new domain. What happens if Google indexes the new site before visiting the redirected domains, could this cause a duplicate content penalty? Cheers
Technical SEO | | activitysuper0 -
Trailing slash 301 redirect code
Hi, I have code for redirecting trailing slash to non-trailing slash, which works fine: RewriteCond %{HTTP_HOST} !^.yourdomain.co.uk$ [NC]RewriteRule ^(.+)/$ http://%{HTTP_HOST}/$1 [R=301,L] (got code from http://googlewebmastercentral.blogspot.com/2010/04/to-slash-or-not-to-slash.html) But I cant find a code for redirecting to the trailing slash version anywhere, and I cant modify the above code myself. Can someone help resolve this issue please, or point me to a resource. Thanks very much James
Technical SEO | | jamesjackson0 -
Do 301 redirects pass page rank quickly
Hi I have been asked to carry out a site audit for a potential client. The site has that many issues I don't where to start in explaining them however, there is one question we are debating and would like to get a second opinion on it. The site I am auditing used to have a homepage rank 7. The site has currently had a redesign (new template with new URLs) and now the root domain 301 redirects to a sub folder two levels deep (not ideal I know!). This happened about a month ago and we are still getting N/A for toolbar page rank. The question is, does Google page rank transfer quicker than normal due to the redirects? or do we still have to wait on the next Google Page Rank update? Thanks in advance Gavelect
Technical SEO | | Equatorites0 -
Are asp redirects permanent?
I need to redirect a windows-hosted domain with permanent (301) redirects so as to preserve most of the link juice. I would be using asp page-level redirects, as there are only about 50 relevant pages. Are these as effective as linux-based 301 redirects in conserving link juice?
Technical SEO | | waynekolenchuk0 -
Does 301 redirect pass "freshness?"
Greetings! I work for an online retailer, and we recently launched a voting tool that allows customers to voice their opinion whether or not we should carry a new item. It's been a huge success and we've been generating thousands of comments. As a result, it's helped our SEO, and our products are showing up on the first page for some keywords without having any external links pointing to these pages. Our plan is to sell a product if it does well during the voting period. Unfortunately, we're not able to process the sale on the voting page, and need to redirect users to another page on our site. I understand that a 301 redirect transfers "linkjuice" to the new destination URL. But does it also transfer "freshness?" I ask because our new landing pages will not be updated as frequently as the voting pages. Example of our Voting Page:
Technical SEO | | znotes
http://www.uncommongoods.com/voting/product/50012/infant-fortune-cookie-booties Example of Redirected Item Page (where sale can be processed):
http://www.uncommongoods.com/product/baby-tube-socks-set-of-4 Any help/comments would be appreciated. Thank you!0