b13/justincase

对于传入的URL,无论是大写还是小写,都可以正常工作。

维护者

详细信息

github.com/b13/justincase

源代码

问题

安装数: 144,256

依赖项: 0

建议者: 0

安全: 0

星级: 16

关注者: 3

分支: 6

开放问题: 4

类型:typo3-cms-extension

1.3.0 2023-06-06 14:36 UTC

This package is auto-updated.

Last update: 2024-08-31 06:26:15 UTC


README

当您的营销团队不小心推送了带有混合大小写URL的活动时,他们不应该遇到404错误。

这个TYPO3扩展解决了您的痛苦——以防万一。

它做什么?

默认情况下,TYPO3 v9在调用实际页面为https://b13.com/lets-connect/时是严格的,但如果您的营销人员将其命名为https://b13.com/Lets-Connect/,则TYPO3 v9默认将URL保存为小写。

一个基于PSR-15的中间件将传入的URL转换为小写,您应该没问题,因为这两个URL都对用户有效。

安装

通过composer req b13/justincase使用它,或者从TYPO3扩展仓库安装扩展justincase

justincase需要TYPO3 v9.5.0或更高版本。

配置

作为网页开发者,有时团队想要一个307重定向,有时只是让一切变成小写。

justincase做了后者(“假装它工作”),默认接收URL,并通过默认方式进一步处理URL,但是您可以通过修改站点配置yaml中的语言数组,在站点级别配置扩展以执行重定向。

languages:
    -
    title: English
    ...
    redirectOnUpperCase: true
    # in case you want to use a status code, other than 307
    redirectStatusCode: 303

如果您希望为所有语言启用重定向,请将以下行添加到站点配置yaml的底部

settings:
    redirectOnUpperCase: true
    # in case you want to use a status code, other than 307
    redirectStatusCode: 303

请注意,此选项仅适用于GET或HEAD请求。

注意事项

如果特定的路由增强器检查驼峰式命名(例如{order}/paymentForm/),这可能会导致意外的行为和404页面。

许可证

作为TYPO3核心,justincase受GPL2或更高版本许可。有关更多详细信息,请参阅LICENSE文件。

背景、致谢及后续维护

此扩展是为了展示您可以使用中间件为TYPO3 v9做什么以及如何定制很多事情而创建的。请参阅https://forge.typo3.org/issues/87544以了解初始请求。

TYPO3社区经常要求功能,可以将这些功能放入小型高效的扩展中,而justincase正是这样做的,而不必将所有负担都放在TYPO3核心中。

justincase最初由Daniel Goerz和Benni Mack为b13, Stuttgart创建,Matthias Stegmann提供了扩展名称的支持。

了解我们为帮助我们在客户项目中提供价值而开发的更多TYPO3扩展作为我们工作方式的一部分,我们专注于测试和最佳实践,以确保我们所有代码的长期性能、可靠性和结果。