def METHOD_NAME(uri, rfcs, cache):
    error = None
    ct = None
    # Do we have the uri cached?
    if uri in cache:
        error, content = cache[uri]
    else:
        m = SHORTENER_PAT.match(uri)
        if m:
            return error, ct
        m = COMMIT_HASH_URI_PAT.match(uri)
        if m:
            rfc = find_matching_rfc(rfcs, m.group(1))
            if rfc:
                error = 'should reference RFC %s' % rfc
        if not error:
            r = requests.head(uri, headers={'User-Agent': COMMON_USER_AGENT}, timeout=10)
            if r.status_code < 200 or r.status_code > 299:
                error = "returns HTTP status code " + str(r.status_code)
            else:
                ct = r.headers['content-type']
                i = ct.find(';')
                if i > -1:
                    ct = ct[:i]
        cache[uri] = (error, None)
    return error, ct