git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] http-backend: provide Allow header for 405

From
Jeff King <peff@peff.net>
Date
Sep 10, 2013, 06:24 UTC
Message-ID
<20130910062359.GA19638@sigill.intra.peff.net>
In-Reply-To
<1378664106-95936-1-git-send-email-sandals@crustytoothpaste.net>
On Sun, Sep 08, 2013 at 06:15:06PM +0000, brian m. carlson wrote:
Show 6 quoted lines
> The HTTP 1.1 standard requires an Allow header for 405 Method Not Allowed:
> 
>   The response MUST include an Allow header containing a list of valid methods
>   for the requested resource.
> 
> So provide such a header when we return a 405 to the user agent.
Makes sense.
Show 8 quoted lines
>  			if (strcmp(method, c->method)) {
>  				const char *proto = getenv("SERVER_PROTOCOL");
> -				if (proto && !strcmp(proto, "HTTP/1.1"))
> +				if (proto && !strcmp(proto, "HTTP/1.1")) {
>  					http_status(405, "Method Not Allowed");
> +					hdr_str("Allow", !strcmp("GET", c->method) ?
> +						"GET, HEAD" : c->method);
> +				}

It took me a minute to figure out what is going on here. But we seem to convert HEAD requests into GETs elsewhere, so any "GET" service should be able to do either.

Looks OK to me.
-Peff
Previous: brian m. carlson
Message 4 of 4 in “http-backend: provide Allow header for 405”
  1. http-backend: provide Allow header for 405brian m. carlson, Sep 8, 2013
  2. Jonathan NiederSep 9, 2013
  3. brian m. carlsonSep 11, 2013
  4. Jeff KingSep 10, 2013

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.