TYPO3 composer 安装 - 与非 Composer 的区别
TYPO3 composer installation - differences to non-Composer
我目前正在将非 Composer TYPO3 项目迁移到 Composer。
据我所见所闻,自动加载发生了变化,文件结构也发生了变化。您不能再通过扩展管理器导入扩展。此外,一些扩展只能通过 composer 安装(除非你做了丑陋的调整)。
此外,从安全的角度来看,至少有一个攻击向量被关闭,因为您无法再通过后端安装扩展程序。
文档和其他人指出建议将 TYPO3 与 Composer 一起使用,但究竟有什么优点,这些是否适用于所有情况?
例如,就我而言,我维护一个站点,更新 TYPO3 和扩展很容易。实际上,可能不会有太大的改进。我认为与包管理器一起工作很酷,但我也必须“推销”为什么我现在这样做而其他任务没有完成。
我完全明白你的意思,你必须把它卖掉。
获得您的项目 运行 作曲家并不难,但也有一些陷阱。但是一旦你熟悉了一些基本命令,你就会发现它会减少你的工作时间。
并非全部,但在许多情况下,使用命令行工具管理项目 line https://github.com/TYPO3-Console/TYPO3-Console 可为您提供更强大、更快速的工具。老实说,在控制台中打字总是很酷。
所以是的,即使是 'small site',学习一项新技术总能在长期 运行 中得到回报。你卖的不是时间,而是专业知识。学习的代价,你必须自己支付,但当你开始工作时,你会保持快乐。 win-win
运行TYPO3v8/v9/v10+在composer-based模式下的优势:
- PHP 的速度改进,因为自动加载器包括请求的扩展(和使用的系统扩展)
- 只有您正在使用的系统扩展在您的生产站点可用
- 如果您正在使用 Git,您 不需要 添加您的 typo3/ 文件夹和带有 composer-based 扩展名的供应商文件夹,这使您Git 存储库小得多
- 您可以通过 composer 添加您站点中需要的更多 PHP 库,并且可以 fine-grain 基于您的 PHP 环境的依赖项
不同点:
- 您不能再使用扩展管理器从 TER 下载 扩展,您必须使用 CLI 工具来获取 third-party 或系统扩展
- 您仍然需要在扩展管理器中或通过 TYPO3 控制台激活这些扩展来更新您的PackageStates.php文件。
- 您的所有本地扩展都需要通过 a) 根 composer.json 中的自动加载部分或 b) 包含它们自己的 composer.json 并在其中包含自动加载部分来添加。
关于文件夹结构的说法是错误的,事实上,Composer 允许配置您的供应商文件夹在您的文档根目录之外,这使您的网站更安全恕我直言,但您不必这样做。
一般来说,如果您不习惯使用 CLI,或者不使用 Git 或部署策略,那么对于 TYPO3 用户来说,composer 实际上不是一个实用的解决方案。
我目前正在将非 Composer TYPO3 项目迁移到 Composer。
据我所见所闻,自动加载发生了变化,文件结构也发生了变化。您不能再通过扩展管理器导入扩展。此外,一些扩展只能通过 composer 安装(除非你做了丑陋的调整)。
此外,从安全的角度来看,至少有一个攻击向量被关闭,因为您无法再通过后端安装扩展程序。
文档和其他人指出建议将 TYPO3 与 Composer 一起使用,但究竟有什么优点,这些是否适用于所有情况?
例如,就我而言,我维护一个站点,更新 TYPO3 和扩展很容易。实际上,可能不会有太大的改进。我认为与包管理器一起工作很酷,但我也必须“推销”为什么我现在这样做而其他任务没有完成。
我完全明白你的意思,你必须把它卖掉。
获得您的项目 运行 作曲家并不难,但也有一些陷阱。但是一旦你熟悉了一些基本命令,你就会发现它会减少你的工作时间。 并非全部,但在许多情况下,使用命令行工具管理项目 line https://github.com/TYPO3-Console/TYPO3-Console 可为您提供更强大、更快速的工具。老实说,在控制台中打字总是很酷。
所以是的,即使是 'small site',学习一项新技术总能在长期 运行 中得到回报。你卖的不是时间,而是专业知识。学习的代价,你必须自己支付,但当你开始工作时,你会保持快乐。 win-win
运行TYPO3v8/v9/v10+在composer-based模式下的优势:
- PHP 的速度改进,因为自动加载器包括请求的扩展(和使用的系统扩展)
- 只有您正在使用的系统扩展在您的生产站点可用
- 如果您正在使用 Git,您 不需要 添加您的 typo3/ 文件夹和带有 composer-based 扩展名的供应商文件夹,这使您Git 存储库小得多
- 您可以通过 composer 添加您站点中需要的更多 PHP 库,并且可以 fine-grain 基于您的 PHP 环境的依赖项
不同点:
- 您不能再使用扩展管理器从 TER 下载 扩展,您必须使用 CLI 工具来获取 third-party 或系统扩展
- 您仍然需要在扩展管理器中或通过 TYPO3 控制台激活这些扩展来更新您的PackageStates.php文件。
- 您的所有本地扩展都需要通过 a) 根 composer.json 中的自动加载部分或 b) 包含它们自己的 composer.json 并在其中包含自动加载部分来添加。
关于文件夹结构的说法是错误的,事实上,Composer 允许配置您的供应商文件夹在您的文档根目录之外,这使您的网站更安全恕我直言,但您不必这样做。
一般来说,如果您不习惯使用 CLI,或者不使用 Git 或部署策略,那么对于 TYPO3 用户来说,composer 实际上不是一个实用的解决方案。