2013-04-09 4 views
-1

Теперь, когда мои ноги официально влажны .htaccess У меня новый вопрос. В одном из многих учебников я закладки, автор рекомендует разместить этот кусочек кода в начале файла .htaccess:.htaccess код, является ли этот пример хорошей практикой кодирования?

AddDefaultCharset UTF-8 
RewriteEngine On 
RewriteBase/

Я могу понять вопросы, позволяющий избежать проблем при разборе с этой первой строкой, так, что Я хочу знать, кроме RewriteEngine On - это две другие хорошие практики или просто добавление раздувания?

Большое спасибо!

ответ

2

Линия RewriteBase / иногда используется для разрешения относительных URI в целевой и/или шаблонах RewriteRule. Например, если файл Htaccess находится в каталоге /foo, и у вас есть правила, которые могли бы выглядеть примерно так:

RewriteEngine On 
RewriteBase /foo/ 
RewriteRule ^bar$ index.php?bar [L] 

Здесь, цель создания правила index.php?bar является относительным URI и база получает предваряется к нему , что приводит к URI: /foo/index.php?bar. Когда цель правила относительна, apache делает предположение относительно того, является ли URI файловым путем или URL-адресом, и он не всегда правильно угадывает. С помощью RewriteBase /foo/ apache знает, что /foo/index.php - это URL-путь. Могут быть случаи, когда база перезаписи не соответствует папке, в которой она находится, но результат все тот же. Он действует как база URI для относительных URI, которые находятся в правилах.

Не имеет значения, если по какой-то причине вы не хотите, чтобы определенные относительные URI отображались на пути к файлам.

директива AddDefaultCharset не относится к набору символов файла Htaccess, это часть ответа, что веб-сервер дает на запросы, когда запрашиваемый контент типа text/html или text/plain. Опять же, не помешает иметь это в вашем файле htaccess, если вы не являетесь текстовым или html-контентом, на самом деле это некоторая другая кодировка (например, * shift_jis *).

+0

Еще раз большое спасибо! Вся хорошая информация, и я думаю, что это было предпочтение кодирования от имени автора учебника. Отлично! – mileaminute

Смежные вопросы