Как настроить структуры Yii2 (frontend / backend) на хостинге

Данная инструкция показывает, как настроить структуру проекта Yii2 (frontend / backend) на хостинге с использованием правил .htaccess.

webhosting1 min read

ℹ️

Данная инструкция показывает, как настроить структуру проекта Yii2 (frontend / backend) на хостинге с использованием правил .htaccess.

Распакуйте сайт в папку public_html

Распакуйте файлы сайта в директорию /public_html.

В результате структура должна выглядеть примерно так:

/public_html/frontend /public_html/backend

Настройте файл /public_html/.htaccess

Options -Indexes Options FollowSymlinks RewriteEngine on # Backend RewriteCond % ^/admin/$ RewriteRule ^(admin)/$ /$1 [R=301,L] RewriteCond % ^/admin RewriteRule ^admin(/.+)?$ /backend/web/$1 [L,PT] # Frontend RewriteCond % ^.$ RewriteRule ^(.)$ /frontend/web/$1

Настройте файл /backend/web/.htaccess

RewriteEngine on RewriteCond % !-f RewriteCond % !-d RewriteRule . index.php

Настройте файл /frontend/web/.htaccess

Options +FollowSymlinks RewriteEngine On RewriteBase / RewriteCond % (.) RewriteCond % /$ [NC] RewriteRule ^(.)(/)$ $1 [L,R=301] RewriteCond % !-f RewriteCond % !-d RewriteRule . index.php

Измените конфигурацию backend

Откройте файл:

/backend/config/main.php

Добавьте параметр:

'components' => [ 'request'=>[ 'baseUrl'=>'/admin', ], ],

Измените конфигурацию frontend

Откройте файл:

/frontend/config/main.php

Добавьте параметр:

'components' => [ 'request'=>[ 'baseUrl'=>'', ], ],

После выполнения всех шагов сайт будет корректно работать с разделением frontend и backend.

⚠️

После изменения конфигурации рекомендуется очистить кэш приложения и браузера.