Установил Yii2 advanced. Файлы index.php так и остались в backend/web и frontend/web.
Реализовал доступ к ним вот так,
.htaccess<IfModule mod_rewrite.c>
Options +FollowSymlinks
RewriteEngine On
</IfModule>
<IfModule mod_rewrite.c>
# deal with admin first
RewriteCond %{REQUEST_URI} ^/(admin|assets|css|js|images)
RewriteRule ^admin/assets/(.*)$ backend/web/assets/$1 [L]
RewriteRule ^admin/css/(.*)$ backend/web/css/$1 [L]
RewriteRule ^admin/js/(.*)$ backend/web/js/$1 [L]
RewriteRule ^admin/images/(.*)$ backend/web/images/$1 [L]
RewriteCond %{REQUEST_URI} !^/backend/web/(assets|css)/
RewriteCond %{REQUEST_URI} ^/(admin)
RewriteRule ^.*$ backend/web/index.php [L]
RewriteCond %{REQUEST_URI} ^/(assets|css|js|images)
RewriteRule ^assets/(.*)$ frontend/web/assets/$1 [L]
RewriteRule ^css/(.*)$ frontend/web/css/$1 [L]
RewriteRule ^js/(.*)$ frontend/web/js/$1 [L]
RewriteRule ^images/(.*)$ frontend/web/images/$1 [L]
RewriteRule ^(.*)$ frontend/web/$1 [L]
RewriteCond %{REQUEST_URI} !^/(frontend|backend)/web/(assets|css|js)/
RewriteCond %{REQUEST_URI} !index.php
RewriteCond %{REQUEST_FILENAME} !-f [OR]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^.*$ frontend/web/index.php
</IfModule>
фронтенд: site.ru
бекенд: site.ru/admin
Все работает. Однако наткнулся на следующий косяк:
В админке, хочу создать такой url: /admin/users/all/page/2echo Url::toRoute(['/users/all', 'page' => 2], true);
echo Url::toRoute(['/users/all', 'page' => 2]);
на выходе выходит так:
http://site.ru/admin/users/all?page=2
/admin/users/all?page=2
На бекенде мой конфиг такой:...
'components' => [
'request' => [
'enableCsrfValidation' => true,
'enableCookieValidation' => true,
'baseUrl' => '/admin'
],
'urlManager' => [
'enablePrettyUrl' => true,
'showScriptName' => false,
'rules' => [
// Модуль [[users]]
'users/all/page/<page>' => 'users/default/all',
'users/all' => 'users/default/all',
//'<_a:(login|logout|error|captcha)>' => 'admin/default/<_a>',
]
],
....
В общем, при такой конфигурации никак не получается с помощью
echo Url::toRoute(['/users/all', 'page' => 2]);
сделать
/admin/users/all/page/2
Подскажите, пожалуйста, как кто-то решал такую проблему?