Yii2 как скрыть имя модуля в URL?
Мне нужна помощь с UrlManager в Yii2. У меня есть приложение для блога. Есть модуль под названием "блог". Есть BlogController с индексным действием. Чтобы запустить его, я должен запустить URL, как это localhost/myblog/web/blog/blog/index
а такжеlocalhost/myblog/web/blog/blog/post?id=4
(для поста действий). Мои настройки в web.php такие:
'urlManager' => [
'enablePrettyUrl' => true,
'showScriptName' => false,
//'enableStrictParsing' => true,
'rules' => [
//'<action:(blog|index|)>' => 'blog/blog/index',
//'/' => 'blog/blog/index'
]
],
Я попытался запустить с комментариями, но безуспешно. Как настроить так, чтобы URL были такими localhost/myblog/web/index
а также localhost/myblog/web/post?id=4
? С уважением.
1 ответ
"urlManager" сам по себе не может вам помочь. Вам нужно использовать.htaccess. Тогда это будет работать так, как вы хотите. Пожалуйста, скопируйте ниже коды в вас.htaccess..Htaccess вы должны положить в корневую папку.
<IfModule mod_rewrite.c>
RewriteEngine On
</IfModule>
# If a directory or a file exists, use it directly
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
# Otherwise forward it to index.php
RewriteRule . index.php
Надеюсь, это поможет. Благодарю.