Задать вопрос

Где изменить путь к скриптам, которые подключатся из расширения в папке vendor?

Вопрос в том, что при подключении расширения например yii2-cart с папки vendor у меня прописываются неправильные пути к файлам, хотя папки с файлами генерируются

5c6c28380f478778700648.png

Как и где мне заменить путь /assets на /frontend/web/assets ?
Почему он неправильно подключается, я просто скачал и подключил расширение
  • Вопрос задан
  • 110 просмотров
Подписаться 1 Простой 1 комментарий
Решения вопроса 2
webinar
@webinar Куратор тега Yii
Учим yii: https://youtu.be/-WRMlGHLgRg
видимо в yii2-cart. Вы бы хоть линк дали на расширение, что бы посмотреть что там с assets.
Почему он неправильно подключается, я просто скачал и подключил расширение

Если у Вас /frontend доступен из web - вы не правильно yii готовите. И проблема не в расширении или не только в расширении. Корнем сайта должна быть папка web
Ответ написан
myks92
@myks92 Куратор тега Yii
Нашёл решение — пометь вопрос ответом!
Скорее всего тут просто проблема в .htaccess

Вы говорите, что вы пробовали
RewriteCond %{REQUEST_URI} !^/(assets)
RewriteRule ^assets/(.*)$ web/assets/$1 [L]
RewriteRule ^css/(.*)$ web/css/$1 [L]
RewriteRule ^fonts/(.*)$ web/fonts/$1 [L]
RewriteRule ^js/(.*)$ web/js/$1 [L]
RewriteRule ^images/(.*)$ web/images/$1 [L]
RewriteRule (.*) web/$1

Но это для basic шаблона. Вам нужно для advanced
<IfModule mod_rewrite.c>
    Options +FollowSymlinks
    RewriteEngine On
</IfModule>
 
<IfModule mod_rewrite.c>
    # deal with admin first
    RewriteCond %{REQUEST_URI} ^/(admin)
    RewriteRule ^admin/assets/(.*)$ backend/web/assets/$1 [L]
    RewriteRule ^admin/css/(.*)$ backend/web/css/$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>
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы