b13 / http2
通过HTTP/2服务器推送加速TYPO3渲染
2.0.0
2023-02-24 13:20 UTC
Requires
- php: ^7.4 || ^8.0
- psr/http-server-middleware: ^1.0
- typo3/cms-core: ^10.0 || ^11.0 || ^12.0
- typo3/cms-frontend: ^10.0 || ^11.0 || ^12.0
Requires (Dev)
- phpunit/phpunit: ~7.0
- squizlabs/php_codesniffer: ^2.3
- typo3/tailor: ^1.4.0
This package is auto-updated.
Last update: 2024-09-02 07:12:23 UTC
README
此TYPO3扩展会获取用于页面渲染的所有CSS和JS资源,并为每个资源发送额外的HTTP/2头信息"Link",从而加快TYPO3 CMS的首次有内容绘制。
此扩展目前运行在TYPO3 v10、TYPO3 v11和TYPO3 v12上,需要PHP 7.4或更高版本。
安装
只需使用composer req b13/http2
命令,并通过扩展管理器安装扩展,刷新缓存,然后即可使用。
为了查看扩展是否工作正常,请确保您的Web服务器支持HTTP/2,通过HTTPS运行,并检查您的响应头以查看是否添加了"link: "头信息。
无需配置,直接使用即可(tm)。
需求
您需要一个支持HTTP/2的Web服务器,以及当然,HTTPS。
此外,使用PHP7 - 如果您关心性能或支持的PHP版本,则无需讨论。
内部工作原理
- 通过获取连接的CSS/JS文件和库,挂钩到"PageRenderer" API类。
- 如果在FE中,这些信息存储在TSFE中,与缓存数据一起(这里可能运行两次以获取非缓存信息)
- 通过
header()
发送到客户端 - 在BE中直接发送或在FE中通过PSR-15中间件在请求结束时发送(仅适用于TYPO3 v10+)。
待办事项
- 实现选项以允许定义其他资源(字体/图像),例如通过TypoScript。
- 使用合适的DTO而不是数组。
致谢
许可
由于这是一个扩展TYPO3的PHP项目,所有代码均按GPL v2+许可。
分享我们的专业知识
查找我们开发的更多TYPO3扩展,这些扩展有助于我们在客户项目中提供价值。作为我们工作方式的一部分,我们专注于测试和最佳实践,以确保所有代码的长期性能、可靠性和效果。