hestec / silverstripe-cdnrewrite
自动重写媒体和资产的URL以使用CDN
v2.0.1
2021-01-19 10:46 UTC
Requires
- silverstripe/cms: ^4.0
- silverstripe/vendor-plugin: ^1.0
This package is not auto-updated.
Last update: 2024-09-25 18:16:22 UTC
README
提供了一种简单的方法来重写资产和资源的URL,以便使用子域名或外部CDN服务
V2
请注意,V2分支引入了新的配置语法。如果您正在使用模块的V1版本,您需要更改它才能正常工作。请参阅下面的配置说明,了解如何设置此模块的示例。
要求
*Silverstripe 4.x
安装
- 使用
composer require dorsetdigital/silverstripe-cdnrewrite "^2"
安装代码 - 运行
dev/build?flush
来更新您的项目
使用方法
除非您进行一些配置,否则模块不会对您的网站进行任何更改。您可以在yml文件中设置一些选项
---
Name: cdnconfig
---
DorsetDigital\CDNRewrite\CDNMiddleware:
cdn_rewrite: true
cdn_domain: 'https://cdn.example.com'
add_debug_headers: true
enable_in_dev: true
subdirectory: ''
add_prefetch: true
rewrites:
- '_resources'
- 'client'
选项应该是相当自解释的
cdn_rewrite
- 全局启用和禁用模块(默认为false - 禁用)cdn_domain
- CDN的完整域名(启用模块所必需)add_debug_headers
- 如果启用,将添加额外的HTML头,以显示正在应用的各种操作(默认为false)enable_in_dev
- 在开发模式下启用CDN(默认为false)subdirectory
- 如果您的网站位于子目录中,请设置此选项(例如,对于http://www.example.com/silverstripe - 将此设置为'silverstripe')add_prefetch
- 如果您想让模块自动将<link rel="dns-prefetch">
标签添加到您的HTML头中以提高性能,请将此设置为truerewrites
- 这是您希望重写的URL前缀列表。默认情况下,CMS 4在公共结构中公开内容,位于_resources目录中,因此您可能希望将其作为最低要求。您可以在此处添加所需的任何额外条目。
注意
- 模块在CMS / 管理系统中被禁用,因此在这里不会发生重写
- 启用时,模块将始终添加HTTP头
X-CDN: Enabled
以显示它正在工作,即使没有执行其他重写操作。如果此头不存在并且您认为应该存在,请确保您已将cdn_rewrite
设置为true,在您的配置文件中已指定cdn_domain
,并且如果正在开发模式下测试,则已将enable_in_dev
设置为true。
致谢
- 非常受Werner Krauss的silverstripe-cdnrewrite的启发
- 一如既往,感谢核心团队的所有辛勤工作。