Каким должен быть HTTP-ответ, когда ресурс запрещен, но есть альтернативный ресурс? - PullRequest
2 голосов
/ 14 октября 2008

Если у меня есть ресурс, к которому у запрашивающего клиента нет доступа, но я хочу уведомить его об альтернативном ресурсе, к которому у него есть доступ, должен ли я отправить ему 403 Forbidden с URI альтернативного ресурса в заголовке или содержимом? Или я должен просто отправить перенаправление 303 See Other на ресурс, к которому у них есть доступ?

Ответы [ 3 ]

1 голос
/ 14 октября 2008

Нет HTTP-кода для «запрещено, но посмотрите на это».

Однако вы можете настроить страницу с ошибкой 403, чтобы была ссылка на альтернативный контент. Если у вас есть несколько альтернативных ссылок, вы можете найти это решение лучше.

Если уведомление пользователя о том, что доступ запрещен, не так важно, вы можете вместо этого использовать 302 (временное перенаправление) или, если пользователь никогда не будет иметь доступ к запрещенному контенту, 301 (постоянное перенаправление).

1 голос
/ 14 октября 2008

Если человек видит страницу с ошибкой, не имеет значения, какой код вы выберете; если есть удобочитаемое сообщение об ошибке; люди будут игнорировать код.

Вопрос в том, что вы хотите, чтобы машина делала? Хотите ли вы, чтобы машина автоматически перенаправляла на альтернативный контент при любых обстоятельствах? Если у кого-то есть законная причина для получения страниц с вашего сайта программным путем, должен ли он получить альтернативный контент в этом случае? Или, если кто-то использует прокси-сервер с кэшированием, вы бы хотели, чтобы он автоматически перенаправлял?

Если вы никогда не хотите, чтобы он автоматически перенаправлял при таких обстоятельствах, тогда 403 - правильный ответ. Если вы предпочитаете, чтобы люди получали правильный контент, и только действительно любопытные пользователи позаботились бы о том, чтобы исходный контент был запрещен, тогда 301 или 302 будет иметь больше смысла.

0 голосов
/ 14 октября 2008

http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html

Я бы предположил, что вы ищете что-то в семье 300. Автоматическое перенаправление кажется намного более дружественным, чем 403.

Плюс, 403 делает объект интересным и может предложить больше исследования.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...