Обшарил "весь" интернет, не нашел нормальной настройки .htaccess для Yii2 advanced
Проблема: Обследовав платные (не VPS) и бесплатные хостинги оказалось, что почти везде можно крепить хотя бы один домен + создавать множество поддоменов, но ни один из них не позволил мне изменить docroot в настройках хостинга (не .htaccess)
Цель: Есть domain.com - frontend и cp.domain.com - backend. Нужно при помощи .htaccess позволить обращаться к файлам
domain.com/index.php
и
domain.com/index-test.php
Моё начальное решение:
в корне .htaccess:
Код: Выделить всё
<IfModule mod_rewrite.c>
Options -Indexes
RewriteEngine On
</IfModule>
<IfModule mod_rewrite.c>
RewriteCond %{HTTP_HOST} ^cp.(.*)$ [NC]
RewriteRule ^(.*)$ backend/web/$1 [L]
RewriteRule ^(.*)$ frontend/web/$1 [L]
</IfModule>
Код: Выделить всё
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php
</IfModule>
Код: Выделить всё
'assetManager' => [
'basePath' => '@webroot/assets',
'baseUrl' => '@web/assets'
],
'request' => [
'baseUrl' => ''
],
'urlManager' => [
'enablePrettyUrl' => true,
'showScriptName' => false
]
domain.com/
domain.com/favicon.ico
domain.com/robots.txt
domain.com/css/style.css
domain.com/assets/somestype.css
то все работает
Но не работают
domain.com/index.php
domain.com/index-test.php (как же без тестов?)
Ожидаемый конечный результат:
Заливаем все файлы-исходники кроме папки /frontend "в" домен cp.domain.com
Заливаем все файлы-исходники кроме папки /backend "в" домен domain.com
1) Работающие тесты на фронтенде, /index.php, ссылки на стили без /frontend/web/
2) Полностью рабочий Yii - чтобы ничего не было урезано (например, миграции) из-за изменений файлов .htaccess
Спасибо всем, кто решился помочь!