Для настройки URL-адреса в Yii2 вы должны внести изменения в файл конфигурации приложения и использовать правила маршрутизации.
1. Откройте файл config/web.php
или config/main.php
, в зависимости от версии Yii2.
2. Найдите массив components
в этом файле и добавьте следующий код:
'urlManager' => [ 'enablePrettyUrl' => true, 'showScriptName' => false, 'rules' => [ // Правила маршрутизации ], ],
3. enablePrettyUrl
- эта опция включает красивые URL-адреса, чтобы они выглядели читабельно и не содержали в себе основной скрипт (index.php). Она должна быть установлена в true
.
4. showScriptName
- эта опция определяет, будет ли основной скрипт (index.php) отображаться в URL-адресах. Она должна быть установлена в false
.
Затем вам необходимо создать правила маршрутизации. Эти правила определяют соответствие URL-адресов вашим контроллерам и действиям.
Примеры правил маршрутизации:
'rules' => [ '<controller:w+>/<id:d+>' => '<controller>/view', '<controller:w+>/<action:w+>/<id:d+>' => '<controller>/<action>', '<controller:w+>/<action:w+>' => '<controller>/<action>', ],
В приведенных выше примерах <controller>
- это название вашего контроллера, <action>
- это название вашего действия, <id>
- это идентификатор объекта.
Символ w+
означает, что сегмент URL-адреса должен состоять только из буквенно-цифровых символов. Цифры могут быть заданы с помощью d+
. Вы можете изменить эти шаблоны в соответствии со своими потребностями.
Таким образом, когда пользователь будет заходить по URL-адресу example.com/post/view?id=1
, Yii2 будет преобразовывать его в example.com/post/1
, где post
- контроллер, view
- действие, а 1
- идентификатор объекта.
Кроме того, вы можете настроить дополнительные параметры URL, такие как suffix
(суффикс URL-адреса), rules
(правила маршрутизации для конкретных URL-адресов) и многое другое. Вы можете ознакомиться с документацией Yii2 для получения дополнительной информации о настройке URL-адреса.