htaccess mod_rewrite, разница между [L] и [R = 301, L] - PullRequest
3 голосов
/ 07 ноября 2011

Так в чем же разница?

Будет ли браузер кэшировать 301 и запоминать его?

1 Ответ

10 голосов
/ 07 ноября 2011

Основное различие между флагами [L] и [R=301,L] заключается в том, что флаг R вызывает явное внешнее перенаправление HTTP (существует одно исключение ) хотя без флага R правило также может вызывать неявное внутреннее перенаправление в зависимости от фактического правила и запроса.

Необязательный код состояния просто указывает тип ответа на перенаправление. 301 обозначает постоянное перенаправление :

Запрошенному ресурсу был назначен новый постоянный URI, и любые будущие ссылки на этот ресурс ДОЛЖНЫ использовать один из возвращенных URI.Клиенты с возможностями редактирования ссылок должны автоматически связывать ссылки на Request-URI с одной или несколькими новыми ссылками, возвращаемыми сервером, где это возможно.Этот ответ кэшируется, если не указано иное.

Два последних предложения также отвечают на ваш вопрос, является ли такой ответ кэшируемым.

...