rust-lang / rust-lang/rust-playground

HEAD requests return 'Method Not Allowed'

Open
#667 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Rust
Stars
1.4k
Forks
267
Avg merge
3h 2m
Merged PRs (30d)
6

Description

$ curl -I 'https://play.rust-lang.org/'
HTTP/1.1 405 Method Not Allowed

According to RFC 7231,

The HEAD method is identical to GET except that the server MUST NOT
send a message body in the response (i.e., the response terminates at
the end of the header section). The server SHOULD send the same
header fields in response to a HEAD request as it would have sent if
the request had been a GET, except that the payload header fields
(Section 3.3) MAY be omitted. This method can be used for obtaining
metadata about the selected representation without transferring the
representation data and is often used for testing hypertext links for
validity, accessibility, and recent modification.

This causes cargo-deadlinks and linkcheck to report any playground URLs as dead links.

Is this intentional? Most major web frameworks I know will handle HEAD for you automatically.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the failure with the curl command in the issue, then trace the Rust playground's HTTP request handling to find where HEAD requests are rejected. Done means a HEAD request to the playground returns the appropriate headers without a response body, so cargo-deadlinks and linkcheck no longer report its URLs as dead.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
api, backend
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.