On Fri, Feb 26, 2010 at 4:38 PM, Thomas Nunninger <tho...@nunninger.info> wrote: > Hi, > > after updating some content in my application, I want to redirect with a 303 > HTTP response code. If I use ezcMvcExternalRedirect it uses a very unspecific > 302 code. In HTTP 1.1 you could use 301 and 307 instead of 302. > > The German wikipedia (http://de.wikipedia.org/wiki/HTTP-Statuscode) even > states not to use the 302 redirect when redirecting to other sites because of > an search engine error (URL hijacking). > > Finally I think, I should not patch ezcMvcExternalRedirect but extend it with > semantic meanings like "content updated, show normal view", "content is > available on other location" and so on. > > But I even need some patch like: > > --- response_writers/http.php (Revision 94) > +++ response_writers/http.php (Arbeitskopie) > @@ -73,7 +73,14 @@ > // write output > foreach ( $this->headers as $header => $value ) > { > - header( "$header: $value" ); > + if ( !is_array( $value ) ) > + { > + header( "$header: $value" ); > + } > + else > + { > + header( "$header: {$value[0]}", true, $value[1] ); > + } > } > // do cookies > foreach ( $this->response->cookies as $cookie ) > > If the value of the header is an array, the second entry is the status code. > Otherwise, everything behaves like before. > > The code seems to be a little bit hackish (because of the semantic in a simple > array struct). But I don't have another idea without breaking BC. > > What do you think?
Wouldn't it be nice to add an $httpCode attribute to ezcMvcResponse and use it in ezcMvcHttpResponseWriter? Regards -- http://jamespic.com/contact Customer is king - Le client est roi - El cliente es rei. -- Components mailing list Components@lists.ez.no http://lists.ez.no/mailman/listinfo/components