跳到主要内容
WARNING You're browsing the documentation for an old version of Deskpro. Consider updating to Deskpro Horizon.

Using a CDN for static assets

在 Performance Boosting 中
作者列表
已发布: 2018年7月23日|最后更新: 2018年7月23日

All of Deskpro's static application assets (such as Javascript and CSS) exist in the www/assets directory. If you wish to serve static application assets from a CDN for improved performance, you can follow this guide.

Sync assets to your CDN Copy link to Sync assets to your CDN to clipboard

As described above, all static assets exist in the www/assets directory. You need to sync this directory with your CDN.

For example:

  • On your server you might have: /deskpro/www/assets
    • An example file might be: /deskpro/www/assets/12345/web/images/dp-logo-48.png
  • Your CDN would therefore have: https://my-cdn.example.com/assets/12345/web/images/dp-logo-48.png
Warning

You'll notice that within the assets directory, there is a sub-directory integer representing the version of Deskpro you are using (i.e. assets/12345). Every time you upgrade Deskpro, this number changes. It's important that you always sync the assets directory to your CDN whenever you upgrade Deskpro.

If your CDN provider lets you set caching settings, you can treat these assets as immutable -- i.e. you may set caching headers such that the cache never expires and never needs revalidating.

Deskpro Config Copy link to Deskpro Config to clipboard

After you have a CDN configured and sync'd, you need to tell Deskpro to actually use your CDN.

Edit config/config.paths.php and append the following lines:

// Modify the URL here to point to your CDN $cdn_base_url = 'https://my-cdn.example.com/'; $PATHS_CONFIG['asset_paths'] = [ 'legacy_web' => ['type' => 'url', 'value' => $cdn_base_url.'assets/%DP_ACTIVE_BUILD%/web'], 'vendor_assets' => ['type' => 'url', 'value' => $cdn_base_url.'assets/%DP_ACTIVE_BUILD%/pub/node_modules'], 'app_assets' => ['type' => 'url', 'value' => $cdn_base_url.'assets/%DP_ACTIVE_BUILD%/pub/build'], 'assets_root' => ['type' => 'url', 'value' => $cdn_base_url.'assets/%DP_ACTIVE_BUILD%'], 'appsrc_assets' => ['type' => 'url', 'value' => $cdn_base_url.'assets/%DP_ACTIVE_BUILD%/pub/src'], ];
copy
有帮助没有帮助
下一个页面Proxies and load-balancing
上一个页面Performance Boosting

请登录或注册以提交评论。