andersundsehr/reduce-duplicate-content

如果页面以 / 结尾(或不是),则进行重定向。(减少重复内容)

安装次数: 6,413

依赖: 0

建议者: 0

安全性: 0

星级: 1

关注者: 2

分支: 0

开放性问题: 0

类型:typo3-cms-extension

1.1.0 2024-03-19 12:56 UTC

This package is auto-updated.

Last update: 2024-09-19 13:58:42 UTC


README

composer req andersundsehr/reduce-duplicate-content

此扩展做什么?

它旨在减少具有相同内容的URL。

主要点是,默认情况下,TYPO3的页面可访问性如下: /en/page-a/en/page-a/

通过一个简单的设置,您可以更改是否始终想要尾部斜杠或永不想要。

此设置仅设置TYPO3生成URL的方式。
但是,内容可以通过这两个URL访问。

这就是此扩展发挥作用的地方。

它是如何解决这个问题?

我们为当前页面和语言生成一个URL。
如果此URL与当前请求URL匹配(忽略末尾的斜杠)
然后我们才直接比较URL。
如果不匹配,则重定向到正确的URL。

它与 studiomitte/redirect2trailingslash 有何不同?

EXT:redirect2trailingslash 仅在您始终想要尾部斜杠时才有用。
我们的方法也可以删除斜杠。
此外,它应该有更少的错误,因为我们通过生成URL的方式进行比较。

如果您想要尾部斜杠

您可以这样配置routeEnhancer
文件: config/sites/.../config.yaml

routeEnhancers:
  PageTypeSuffix:
    type: PageType
    # if you want to have trailing slashes for all pages:
    default: '/'
    index: ''
    map:
      /: 0
      sitemap.xml: 1533906435

如果您不想要尾部斜杠

您可以删除RouteEnhancer PageType。
或者确保您不使用 default

文件: config/sites/.../config.yaml

routeEnhancers:
  PageTypeSuffix:
    type: PageType
    index: ''
    map:
      /: 0
      sitemap.xml: 1533906435

如果您使用staticfilecache,您需要在nginx配置中添加以下行

    # Ensure we redirect to TYPO3 for non GET/HEAD requests
    if ($request_method !~ ^(GET|HEAD)$ ) {
        return 405;
    }

    # Ensure we redirect to TYPO3 for urls ending with slash ####### THIS
    if ($request_uri ~ "^.*/$") {
        return 405;
    }

    # Ensure we redirect to TYPO3 for urls ending without slash ####### OR THIS
    if ($request_uri !~ "^.*/$") {
        return 405;
    }

    charset utf-8;
    default_type text/html;
    try_files /typo3temp/tx_staticfilecache/https_${host}_443${uri}/index /typo3temp/tx_staticfilecache/${scheme}_${host}_${server_port}${uri}/index =405;

重要!如果您使用staticfilecache

如果您使用staticfilecache,您必须禁用staticfilecache的回退中间件:

更改307状态码

您可以在扩展设置中更改它。

来自 anders und sehr GmbH 的热爱

如果某些事情没有工作 😮
或者您欣赏此扩展 🥰 请告诉我们。

我们正在招聘 https://www.andersundsehr.com/karriere/