Title: Default 302 Redirect
Last modified: August 22, 2016

---

# Default 302 Redirect

 *  Resolved [rushdhi](https://wordpress.org/support/users/rushdhi/)
 * (@rushdhi)
 * [11 years, 4 months ago](https://wordpress.org/support/topic/default-302-redirect/)
 * Hello Support,
 * I noticed that all the language redirections are doing a 302 temporary redirect.
 * I’d like to have it as 301 instead. Please could you let me know how this could
   be done.
 * Thanks in advance
 * Regards
    Ahamed
 * [https://wordpress.org/plugins/qtranslate-x/](https://wordpress.org/plugins/qtranslate-x/)

Viewing 10 replies - 1 through 10 (of 10 total)

 *  Plugin Author [John Clause](https://wordpress.org/support/users/johnclause/)
 * (@johnclause)
 * [11 years, 4 months ago](https://wordpress.org/support/topic/default-302-redirect/#post-5789517)
 * Which exactly pages and redirects from where to where do you mean? Why do you
   wish it to be permanent?
 *  Plugin Author [John Clause](https://wordpress.org/support/users/johnclause/)
 * (@johnclause)
 * [11 years, 4 months ago](https://wordpress.org/support/topic/default-302-redirect/#post-5789800)
 * I assume this was resolved?
 *  Thread Starter [rushdhi](https://wordpress.org/support/users/rushdhi/)
 * (@rushdhi)
 * [11 years, 4 months ago](https://wordpress.org/support/topic/default-302-redirect/#post-5789801)
 * Hello John,
 * Thank you for you reply.
 * Apologies for the delayed reply as I didn’t notice your response.
 * Well i have my site verdan.com in english and french and I’m using the your plugin
   for translation.
 * I did all the necessary configuration to load the fr version of the site by default.
 * After doing this I noticed that when I typed in my website name, it loaded the
   fr version of the site as expected and there was a redirection from site.com 
   to site.com/fr/ with a 302.
    For SEO it’s recommended to have a 301 instead of
   302. And I’m sure you probably know it.
 * So I would like to know if this 302 redirection behaviour is caused by your plugin
   and if so if there was any way to change it to a 301.
 * It’s not resolved as yet, i would kindly request you to help me fix this.
 * Regards
    Ahamed
 *  Plugin Author [Gunu](https://wordpress.org/support/users/grafcom/)
 * (@grafcom)
 * [11 years, 4 months ago](https://wordpress.org/support/topic/default-302-redirect/#post-5789803)
 * [@rushdhi](https://wordpress.org/support/users/rushdhi/),
 * why is there a redirect?
 * When I type verdan.com is it “flickering” that I see before I come to the right
   page?
 * best
 *  Plugin Author [John Clause](https://wordpress.org/support/users/johnclause/)
 * (@johnclause)
 * [11 years, 4 months ago](https://wordpress.org/support/topic/default-302-redirect/#post-5789812)
 * 301 is a permanent redirect is designed to move dead pages to somewhere else.
   It would not work for switching languages, since same user may go to ‘/’ and 
   get different language depending on the cookies. SEO should be ok with that, 
   since all available languages are listed in HTML header and then redirects between
   them are naturally expected. If a user stays with one language, no redirects 
   will be needed. Does this help?
 *  [WalkInYorkshire](https://wordpress.org/support/users/walkinyorkshire/)
 * (@walkinyorkshire)
 * [11 years, 4 months ago](https://wordpress.org/support/topic/default-302-redirect/#post-5789844)
 * Hi John,
 * Despite what you are saying unfortunately 302 redirects are not SEO friendly 
   as is the use of cookies to switch languages.
 * I’ll try to explain:
 * – **302 redirects: **They are designed to be temporary redirects and therefore
   should only be used in situation where you have a URL you need to temporary change(
   example a promotion that would run for a certain period of time). The idea is
   that you have two pages with the same value and for bots it means they have to
   wait to start crawling the new page. So they stay behind and don’t go to the 
   new page. Having said that if they keep coming back and still see a 302 redirect
   after a while, they will start crawling the new page. If they like what they 
   see they will start indexing the new page.
 * In terms of SEO I would therefore always recommend a 301 redirection. It’s a 
   strong indicator to search engines that a new page has been created and that 
   you want that page to be indexed instead of the old page. Beside every single
   pages holds what is called an amount of authority (or what was used to be known
   as PageRank for Google) and that authority will be passed on straight away with
   a 301 redirect (about 90 to 99% of it actually). As described above with a 302
   redirect the authority is not passed on straight away and is initially blocked
   within the old page. It will eventually be released but in the meantime will 
   have a negative impact on your SEO and you risk seeing your pages going down 
   the rank for a while.
 * More info about redirections and SEO:
    – [http://moz.com/learn/seo/redirection](http://moz.com/learn/seo/redirection)–
   [https://support.google.com/webmasters/answer/93633](https://support.google.com/webmasters/answer/93633)
 * **Cookies to switch languages:** again this is not SEO friendly unfortunately.
   This time the reason is simple: bots can’t read cookies and this will result 
   in the creation of duplicate content. On my site I had disabled cookies with 
   your plugin and found that all “default” languages pages now had two versions.
   Here are some examples:
 * – [http://example.com/](http://example.com/) = [http://example.com/en/](http://example.com/en/)
   –
   [http://example.com/content1/](http://example.com/content1/) = [http://example.com/en/content1/](http://example.com/en/content1/)
 * This is a real problem in terms of SEO as duplicate content confuses search engines.
   They don’t like to show all pages with exact match content and they will decide
   themselves which pages should be indexed and ranked. With Google if there are
   too many duplicate pages it can even lead to be hit by the Panda algorithm. And
   with duplicate content the real problem is about links. Bots will only find pages
   if they have been linked. With your plugin, you are not handling internal links
   well and many of them don’t have the /en/ subfolder I’d like to see. So these
   will be crawled and lead to detection of further duplication. Not even mentioning
   external links – webmasters will have a choice of linking to an /en/ or non /
   en/ page creating even more confusion for bots.
 * Again more info about duplicate content:
    – [https://support.google.com/webmasters/answer/66359?hl=en](https://support.google.com/webmasters/answer/66359?hl=en)(
   Note that in this doc. Google favours solutions such as 301 redirections or canonical
   to deal with duplicate content) – [https://yoast.com/articles/duplicate-content/](https://yoast.com/articles/duplicate-content/)(
   Yoast talks especially about cookies in the “Session ID’s” section)
 * Hope this helps but in the meantime and up until these problems have not been
   solved I will have to find an alternative solution and not use your plugin any
   more.
 *  Plugin Author [Gunu](https://wordpress.org/support/users/grafcom/)
 * (@grafcom)
 * [11 years, 4 months ago](https://wordpress.org/support/topic/default-302-redirect/#post-5789845)
 * [@walkinyorkshire](https://wordpress.org/support/users/walkinyorkshire/),
 * with qTranslate-x with cookies my site is be found in google:
 * mysite.com – English text and
    mysite.com/nl – Dutch text
 * and there are no re-directs.
 * Am I missing something?
 * Best
 *  [WalkInYorkshire](https://wordpress.org/support/users/walkinyorkshire/)
 * (@walkinyorkshire)
 * [11 years, 4 months ago](https://wordpress.org/support/topic/default-302-redirect/#post-5789846)
 * There will still be a duplicate mysite.com and mysite.com/en
 * Disable your cookies in your browser and try yourself. They will both return 
   a 200 status.
 * Also look in the source code for your mysite.com/en URLs and I bet you will find
   a mix of URLs with mysite.com and mysite.com/en therefore sending bots on confusing
   paths.
 * And what about if someone links to mysite.com/en?
 * In any case search engines will choose one page or another to show in the the
   search engine result pages (never both) but because you are always sending bots
   on confusing paths, your pages won’t rank as well as they should.
 * I have nothing against the plugin, it’s solving a good issue for users but you
   can’t call it SEO friendly.
 *  Plugin Author [John Clause](https://wordpress.org/support/users/johnclause/)
 * (@johnclause)
 * [11 years, 4 months ago](https://wordpress.org/support/topic/default-302-redirect/#post-5789847)
 * [@walkinyorkshire](https://wordpress.org/support/users/walkinyorkshire/): Permanent
   redirect is truly permanent, once is done, it is very hard to undo. If we make
   permanent redirect, and then one decide to clear option “Hide URL language information
   for default language”, then most former users will be in a big trouble. How do
   you deal with that?
 * I had impression that SEO cares and takes into account ‘`<link hreflang`‘ attributes,
   which are set to canonical URLs per language and ensure to show content in the
   expected language. Those is what Google is supposed to use as canonical URL per
   language. If those were not set, you would be right.
 *  [WalkInYorkshire](https://wordpress.org/support/users/walkinyorkshire/)
 * (@walkinyorkshire)
 * [11 years, 4 months ago](https://wordpress.org/support/topic/default-302-redirect/#post-5789848)
 * Yes I had noticed that the plugin uses hreflang however this might not have been
   set-up properly and might interact with other plugins like Yoast WordPress SEO
   which sets canonical attributes automatically.
 * For example in your current setting:
 * For URL **[http://mysite.com/content1](http://mysite.com/content1)** would find
   the following:
 * <link rel=”canonical” href=”[http://mysite.com/content1&#8243](http://mysite.com/content1&#8243);/
   >
    (that’s from Yoast WordPress SEO)
 * And then
    <link hreflang=”en” href=”[http://walkinyorkshire.com/en/content1&#8243](http://walkinyorkshire.com/en/content1&#8243);
   rel=”alternate” /> <link hreflang=”fr” href=”[http://walkinyorkshire.com/fr/content1&#8243](http://walkinyorkshire.com/fr/content1&#8243);
   rel=”alternate” /> (that’s from qtranslate-X)
 * And then for URL **[http://mysite.com/en/content1](http://mysite.com/en/content1)**
   you would find the following:
 * <link rel=”canonical” href=”[http://mysite.com/en/content1&#8243](http://mysite.com/en/content1&#8243);/
   >
    (again that’s from Yoast WordPress SEO)
 * And then
    <link hreflang=”en” href=”[http://walkinyorkshire.com/en/content1&#8243](http://walkinyorkshire.com/en/content1&#8243);
   rel=”alternate” /> <link hreflang=”fr” href=”[http://walkinyorkshire.com/fr/content1&#8243](http://walkinyorkshire.com/fr/content1&#8243);
   rel=”alternate” /> (and that’s from qtranslate-X)
 * Finally URL **[http://mysite.com/fr/content1](http://mysite.com/fr/content1)**
   you would find the following:
 * <link rel=”canonical” href=”[http://mysite.com/fr/content1&#8243](http://mysite.com/fr/content1&#8243);/
   >
    (again that’s from Yoast WordPress SEO)
 * And then
    <link hreflang=”en” href=”[http://walkinyorkshire.com/en/content1&#8243](http://walkinyorkshire.com/en/content1&#8243);
   rel=”alternate” /> <link hreflang=”fr” href=”[http://walkinyorkshire.com/fr/content1&#8243](http://walkinyorkshire.com/fr/content1&#8243);
   rel=”alternate” /> (and that’s from qtranslate-X)
 * Above is the wrong set-up because you are indicating to search engines that there
   are 3 different pages (2 duplicate English and 1 unique French) while ideally
   you would only want to have 2 (1 unique English and 1 unique French)
 * **A Solution would be:**
 * On URL **[http://mysite.com/content1](http://mysite.com/content1)**
 * <link rel=”canonical” href=”[http://mysite.com/en/content1&#8243](http://mysite.com/en/content1&#8243);/
   >
 * And then no need to add the hreflang tags here. Only the canonical page should
   have them.
 * And on URL [http://mysite.com/en/content1](http://mysite.com/en/content1)
 * <link rel=”canonical” href=”[http://mysite.com/en/content1&#8243](http://mysite.com/en/content1&#8243);/
   >
 * And then
    <link hreflang=”en” href=”[http://walkinyorkshire.com/en/content1&#8243](http://walkinyorkshire.com/en/content1&#8243);
   rel=”alternate” /> <link hreflang=”fr” href=”[http://walkinyorkshire.com/fr/content1&#8243](http://walkinyorkshire.com/fr/content1&#8243);
   rel=”alternate” />
 * Finally on URL [http://mysite.com/fr/content1](http://mysite.com/fr/content1)
 * <link rel=”canonical” href=”[http://mysite.com/fr/content1&#8243](http://mysite.com/fr/content1&#8243);/
   >
 * And then
    <link hreflang=”en” href=”[http://walkinyorkshire.com/en/content1&#8243](http://walkinyorkshire.com/en/content1&#8243);
   rel=”alternate” /> <link hreflang=”fr” href=”[http://walkinyorkshire.com/fr/content1&#8243](http://walkinyorkshire.com/fr/content1&#8243);
   rel=”alternate” />
 * This set up above is correct because you are self referencing the canonical pages(
   English and French) with their own hreflang attributes (en and fr) and at the
   same eliminating the duplicate English content by pointing to the actual canonical
   page
 * You can find more info here:
    [http://googlewebmastercentral.blogspot.co.uk/2010/09/unifying-content-under-multilingual.html](http://googlewebmastercentral.blogspot.co.uk/2010/09/unifying-content-under-multilingual.html)

Viewing 10 replies - 1 through 10 (of 10 total)

The topic ‘Default 302 Redirect’ is closed to new replies.

 * ![](https://s.w.org/plugins/geopattern-icon/qtranslate-x_f9f9f9.svg)
 * [qTranslate X](https://wordpress.org/plugins/qtranslate-x/)
 * [Frequently Asked Questions](https://wordpress.org/plugins/qtranslate-x/#faq)
 * [Support Threads](https://wordpress.org/support/plugin/qtranslate-x/)
 * [Active Topics](https://wordpress.org/support/plugin/qtranslate-x/active/)
 * [Unresolved Topics](https://wordpress.org/support/plugin/qtranslate-x/unresolved/)
 * [Reviews](https://wordpress.org/support/plugin/qtranslate-x/reviews/)

 * 10 replies
 * 4 participants
 * Last reply from: [WalkInYorkshire](https://wordpress.org/support/users/walkinyorkshire/)
 * Last activity: [11 years, 4 months ago](https://wordpress.org/support/topic/default-302-redirect/#post-5789848)
 * Status: resolved