跨多台服务器的Yii2资产

跨多台服务器的Yii2资产,yii2,assets,Yii2,Assets,我正在尝试将yii2应用程序部署到多个服务器。但我不知道如何分享资产。问题:默认情况下,服务器在有人加载视图时生成资产。但是我有多个服务器,一个浏览器可能会从另一个还没有任何资产的服务器请求一个资产(js或css文件) 可能,它需要在部署期间使用相同的路径在每个服务器上创建所有资产,但是如何创建呢 public function actionCreateBackend() { Yii::setAlias('@webroot', __DIR__.'/../../backen

我正在尝试将yii2应用程序部署到多个服务器。但我不知道如何分享资产。问题:默认情况下,服务器在有人加载视图时生成资产。但是我有多个服务器,一个浏览器可能会从另一个还没有任何资产的服务器请求一个资产(js或css文件)

可能,它需要在部署期间使用相同的路径在每个服务器上创建所有资产,但是如何创建呢

public function actionCreateBackend()
    {
        Yii::setAlias('@webroot', __DIR__.'/../../backend/web');
        Yii::setAlias('@web', '/');

        \backend\assets\AppAsset::register($this->getView());

        echo 'Backend assets was created successfully.'.PHP_EOL;
        return 0;
    }

不要忘记使用assetManager的
hashCallback
生成相同的资产路径

在服务器之间共享应用程序的方法是什么?最好不要直接访问资产文件夹中的任何文件。使用AssetBundle管理css、js文件。Yii2将为您将这些文件创建到资产文件夹中。为什么不使用nginx在节点之间重定向静态文件请求?