[wp-hackers] Should Monthly Archive Pages ever return 404?
Pixline › Paolo Tresso
supporto at pixline.net
Mon Mar 9 20:37:09 GMT 2009
Il giorno 09/mar/09, alle ore 20:03, Paul ha scritto:
> Trying to understand your issue with the 404 returned. Correct me if
> I'm wrong. You really want the option to do something like the
> search results return of the query returned no hits? Which my
> understanding is not a 404.
That is not, but I think it's a slightly different use case.
- user search for something, which produces 0 results, but he's trying
a legitimate action in WordPress. HTTP 200 with 0 results, maybe some
post related to the search term.
- user try to get the third page of the archive of a category which
have only 2 posts, or for a category which is not existent. This
should be 404, until that URL have some content and will have a proper
HTTP status code.
While 204 is a nice idea, I don't think it's acceptable either. Quote
from the HTTP 1/1 RFC :
The server has fulfilled the request but does not need to return an
entity-body, and might want to return updated metainformation. The
response MAY include new or updated metainformation in the form of
entity-headers, which if present SHOULD be associated with the
If the client is a user agent, it SHOULD NOT change its document view
from that which caused the request to be sent. This response is
primarily intended to allow input for actions to take place without
causing a change to the user agent's active document view, although
any new or updated metainformation SHOULD be applied to the document
currently in the user agent's active view.
The 204 response MUST NOT include a message-body, and thus is always
terminated by the first empty line after the header fields.
Also, 404 is not the right answer, because all 4xx status suppose/
implies a client error, and that's not the case (even considered that
most of 404's should be 410: Gone.).
Maybe the right way is 203, non- authoritative information, but this
would be a really ample interpretation of the status code, and I'm not
really sure about that. So, at this time 404 is probably the right
choice (even if somewhat an ample interpretation of it), because the
404 description says:
This status code is commonly used when the server does not wish to
reveal exactly why the request has been refused, or when no other
response is applicable.
Paolo / Pixline
More information about the wp-hackers