2016-10-13 5 views
0

Я пытаюсь выяснить, как я могу настроить AssetBundle через /config/main.php в Yii2. Причина в том, что нам нужно использовать глобальные абсолютные ссылки для всех активов (пакеты CSS + JS) вместо относительного.yii2 assetBundle - все абсолютные ссылки вместо относительных

Мы установили абсолютный @web псевдоним:

Yii::setAlias('@webabs', empty($_SERVER['SERVER_NAME']) ? '/' : '//'.$_SERVER['SERVER_NAME']); 

Так что единственное, что нам нужно изменить это свойство BaseUrl в классе \ юй \ Web \ AssetBundle:

baseUrl = '@webabs'

Следующие не работает для меня:

'assetBundle' => [ 
    'baseUrl' => '@webabs', 
], 

потому что «assetBundle» не является основным компонентом.

'yii\web\AssetBundle' => [ 
    'class' => 'yii\web\AssetBundle', 
    'baseUrl' => '@webabs', 
], 

потому что конфигуратор объектов не будет конфигурировать свойство.

Итак, есть ли способ настроить свойство «baseUrl» глобально в «\ yii \ web \ AssetBundle»?

спасибо.

ответ

2

Try в конфигурации:

// ... 
'components' => [ 
    // ... 
    'assetManager' => [ 
     'baseUrl' => '@webabs/assets' 
    ], 
], 
+0

Thanx, но не работает, до сих пор относительные ссылки во всех пучках. – lubosdz

+0

Я проверил в своем приложении, и это работает: config, как указано выше, но ''baseUrl' => '//'. $ _SERVER ['SERVER_NAME']. '/ assets'' - можете ли вы попробовать? – Bizley

+0

Да! Мой плохой, я кэшировал какой-то статический HTML. Извините и СПАСИБО. – lubosdz

Смежные вопросы