Человекопонятные URL ==================== URL, связывающие различные страницы нашего приложения в настоящее время, выглядят уродливо. Например, URL для страницы, показывающей запись: ~~~ /index.php?r=post/show&id=1&title=A+Test+Post ~~~ В этом разделе мы опишем, как украсить URL и сделать их SEO-ориентированными. Наша цель состоит в том, чтобы использовать следующие URL в приложении: 1. `/index.php/posts/yii`: ведёт на страницу, отображающую список записей с тэгом `yii`; 2. `/index.php/post/2/A+Test+Post`: ведёт на страницу с полным текстом записи с ID равным 2 и заголовком `A Test Post`; 3. `/index.php/post/update?id=1`: ведёт на страницу редактирования записи с ID равным 1. Стоит отметить, что во втором случае мы включили заголовок в URL. Сделано это прежде всего для SEO. Считается, что поисковые машины могут индексировать слова в URL. Для достижения нашей цели, изменим [конфигурацию приложения](/doc/guide/ru/basics.application#application-configuration) следующим образом: ~~~ [php] return array( … 'components'=>array( … 'urlManager'=>array( 'urlFormat'=>'path', 'rules'=>array( 'post//'=>'post/view', 'posts/'=>'post/index', 'post/update/'=>'post/update', '/'=>'/', ), ), ), ); ~~~ В коде выше мы настраиваем компонент [urlManager](/doc/guide/ru/topics.url), устанавливая его свойство `urlFormat` в значение `path` и добавляя несколько правил маршрутизации. Правила используются компонентом `urlManager` для разбора и создания URL в желаемом формате. Например, второе правило говорит, что, если запрошен URL `/index.php/posts/yii`, компонент `urlManager` должен послать запрос по [маршруту](/doc/guide/ru/basics.controller#route) `post/index` и создать GET-параметр `tag` со значением `yii`. С другой стороны, при создании URL с маршрутом `post/index` и параметром `tag`, компонент `urlManager` будет также использовать это правило для создания желаемого URL `/index.php/posts/yii`. Поэтому мы называем компонент `urlManager` двухсторонним менеджером URL. Компонент `urlManager` может и далее украшать наши URL, например, сокрытием части `index.php` в URL или созданием суффикса `.html`. Мы можем легко получить эти особенности, конфигурируя различные свойства компонента `urlManager` в конфигурации приложения. За деталями обратитесь к разделу [красивые адреса URL](/doc/guide/ru/topics.url) руководства.