We had this question "Should a link validator report 302 redirects as broken links?" over at webmaster pro's recently. I can only guess at an answer, but based on the OP's findings the stackbot regards 302 redirects as broken links - is this true, and is there a reason why?
-
@RivieraKid since when has stack considered a polite 'thanks in advance' noise?– toomanyairmilesMay 30, 2012 at 17:55
-
Since at least '09: Should 'Hi', 'thanks,' taglines, and salutations be removed from posts? or more specifically, Why is it considered rude to say 'thanks in advance'? It's just meaningless fluff; communicate your thanks with an upvote instead.– Kevin VermeerMay 30, 2012 at 18:00
-
@KevinVermeer I must have missed that announcement then.– toomanyairmilesMay 30, 2012 at 18:20
-
No problem! Thanks for bringing this up to MSO.– Kevin VermeerMay 30, 2012 at 18:22
-
@KevinVermeer No worries, it's a good question and an interesting discussion to have.– toomanyairmilesMay 30, 2012 at 18:23
-
@Kevin hits the nail on the head - it's nothing personal, I promise. For largely similar reasons, for example, comments are also considered noise in that they don't and shouldn't contain actual content, and the question or answer will stand alone without them. As Kevin says, it started with things like "Hi guys", and "I'm new here", etc. Once they were (rightly IMO) considered noise, it didn't take long for "thanks" to go the same way, though they could possibly be considered a signature, which is also frowned upon. FWIW, I agree it's a good question and did upvote :-)– RivieraKidMay 30, 2012 at 21:51
1 Answer
Does the link validator regard a 302 redirect as broken?
No, the link validator will continue crawling the chain (up to 5 levels deep), if it eventually leads to a 404 or 500 or whatever that is not 200 the original link will eventually be considered broken.
We are considering doing a blanket "community" update on 301s, so users don't have to wait extra time when they click on links and so when the perm redirect is gone we still link to the content.
Overall redirects are heavily misused on the Internet, often people really mean 301 when they use a 302 sometimes they mean a 307.
Additionally a big offender is US, most of the time internal links do not link to the canonical URI on our site so they go through a redirect. We should fix that on post save (at the minimum)
-
1"We are considering doing a blanket "community" update on 301s" -- please don't. Often "permanent" version-less or language-agnostic documentation URLs yield 301s that direct to a specific version or some local language. I think that neither those who explicitly try to post such nice URL, nor those who click it, would like the URL to be silently rewritten to the URL that Stack Exchange determined just because a web server uses 301 where maybe it should have used something else.– ArjanJun 1, 2012 at 19:51
-
@Arjan that is clearly an abuse of 301, it is redirecting to a locale specific host ... due to stuff like this the 301 rewriting is likely to be on the back burner. In general for many sites it may be kosher to do the rewriting, as I said above, web masters have very little clue about proper usage of redirect status codes so this is a V2 thing.– wafflesJun 2, 2012 at 4:53
-
1True, waffles, but it is even happening at Google's help pages. On the other hand: I can see your point about avoiding future dead links. Tough decision. (As an aside, the PHP site abuses 301 for the very short links like
http://www.php.net/array
, which is kind of an auto-search; for the language-less links likehttp://www.php.net/manual/language.types.array.php
they use a 302.)– ArjanJun 2, 2012 at 5:41 -
@Arjan your example is actually wrong .. php.net/array is redirected with a 302 to au2.php.net/array then you get the 301 ... the 301 on google also seems sane and correct.– wafflesJun 4, 2012 at 7:31
-
Web-Sniffer tells me different for both links, waffles. And so does Web Inspector in my Chrome for the Google link... But above all: why do you think the Google 301 looks sane now? (Indeed I get a 302 to get to
http://nl.php.net/array
first in my browser; odd that Web-Sniffer doesn't get that from the server, but it also getsCOUNTRY=NA
in the cookie the server returns, so its 141.0.17.195 IP address might not be recognized to map to some country that php.net supports? Making Web-Sniffer use a different User Agent has no effect...)– ArjanJun 4, 2012 at 16:44