[ 
https://issues.apache.org/jira/browse/OFBIZ-5109?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13541075#comment-13541075
 ] 

Paul Piper commented on OFBIZ-5109:
-----------------------------------

I would ask for a minor change: 303 does not have, by any means, a positive 
effect with SEO. By all means 301 should be used on default as a returned 
value. I pointed this out before, but unfortunately it seems that nabble didn't 
submit it to the ml properly:

http://ofbiz.135035.n4.nabble.com/Controllers-redirections-do-302-tp4633942p4634057.html


So i would argue that 301 should be kept at default. 303 is something we should 
not introduce - it is hardly ever used on the web (albeit it being of potential 
use during the checkout process). Instead the checkout process should handle a 
double-post on its own...

                
> Allow a whole controller or/and request/s to override a default 303 in case 
> of redirect
> ---------------------------------------------------------------------------------------
>
>                 Key: OFBIZ-5109
>                 URL: https://issues.apache.org/jira/browse/OFBIZ-5109
>             Project: OFBiz
>          Issue Type: Improvement
>          Components: ALL COMPONENTS
>    Affects Versions: SVN trunk
>            Reporter: Jacques Le Roux
>            Assignee: Jacques Le Roux
>            Priority: Minor
>              Labels: 301, 302, 303, code, redirection, redirectionCode, seo
>             Fix For: SVN trunk
>
>
> Currently when we define a request-redirect in controllers it underneath uses 
> the Java default 302 redirections ([temporary 
> redirect|http://en.wikipedia.org/wiki/List_of_HTTP_status_codes#3xx_Redirection]).
>  
> Actually all redirect response types (url, cross-redirect, request-redirect, 
> request-redirect-noparam) call  HttpServletResponse.sendRedirect() through 
> RequestHandler.callRedirect(). So all controllers redirections do temporary 
> redirects (302). Ths is all good as long as you don't worry about SEO best 
> practices which recommend to use 301 instead of 302 (Google for "301 vs 302" 
> or see [1], [2], [3]).
> This matters only for eCommerce. In the context of an ERP (or backend by and 
> large), we want to replace 302 by 303 and keep the possibility to use 302 
> (for [Post/Redirect/Get 
> pattern|http://en.wikipedia.org/wiki/Post/Redirect/Get] where 303 is best on 
> HTTP 1.1, 302 on HTTP 1.0)
> I want to set a default 303 status-code property in requestHandler.properties 
> file. Which could be changed for 302 for those who prefer it. The idea is 
> then to allow to override this default value with a status-code attribute on 
> the response element. But since I want also to be able to override a complete 
> controller (like for an eCommerce controller) without having to override each 
> concerned requests. I finally decided to use also a status-code element in 
> site-conf.xsd to be placed before handlers:
> <xs:element name="status-code" type="xs:string"/>
> If present, this will override the status-code property. And the status-code 
> attribute on the response element will override both (cascading), eg:
> <response name="success" type="request-redirect" value="main" 
> status-code="301"/>
> [1] http://support.google.com/webmasters/bin/answer.py?hl=en&answer=93633
> [2] http://support.google.com/webmasters/bin/answer.py?hl=en&answer=40132
> [3] http://searchengineland.com/images/301-302-explained.gif

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to