O que significa
O recurso tem várias representações (idioma, formato) e o cliente ou usuário deve escolher uma. O servidor pode sugerir a preferida via Location.
Causas comuns
- A negociação de conteúdo não conseguiu escolher entre variantes
- Um servidor lista formatos ou idiomas alternativos
Como resolver
Se você é o cliente ou visitante
Siga Location se houver, ou escolha entre os links listados. Navegadores não escolhem sozinhos.
Se você mantém o site ou a API
Prefira a negociação conduzida pelo servidor (Accept, Accept-Language) e retorne 200 com a melhor opção; 300 raramente é a melhor experiência.
Resposta de exemplo
HTTP/1.1
HTTP/1.1 300 Multiple Choices
Date: Tue, 07 Oct 2025 09:30:00 GMT
Server: nginx
Link: </doc.en.html>; rel=alternate; hreflang=en
Link: </doc.de.html>; rel=alternate; hreflang=de
Content-Length: 0 Especificação
Perguntas frequentes
› Navegadores seguem um 300 automaticamente?
Alguns seguem o cabeçalho Location, se houver; caso contrário, o usuário vê o corpo da página com as opções.
› 300 é bom para sites multilíngues?
Geralmente não. Redirecione com 302 ou sirva o idioma certo com links hreflang.