PHPackages                             wazum/umleitung - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. wazum/umleitung

ActiveTypo3-cms-extension[Utility &amp; Helpers](/categories/utility)

wazum/umleitung
===============

TYPO3 CMS Redirects site base agnostic and with fuzzy target

1.0.1(4y ago)2125GPL-3.0PHPPHP &gt;=7.2.0

Since Mar 7Pushed 4y agoCompare

[ Source](https://github.com/wazum/umleitung)[ Packagist](https://packagist.org/packages/wazum/umleitung)[ RSS](/packages/wazum-umleitung/feed)WikiDiscussions master Synced today

READMEChangelogDependencies (1)Versions (4)Used By (0)

umleitung
=========

[](#umleitung)

TYPO3 CMS Redirects site base agnostic and with fuzzy target

Installation
------------

[](#installation)

Add the extension with composer

```
composer require wazum/umleitung

```

The extension has no settings, just activate it and you're done.

What does it do?
----------------

[](#what-does-it-do)

### Site base agnostic redirects

[](#site-base-agnostic-redirects)

The default TYPO3 redirect middleware is inserted after the site base resolver middleware, therefore it's impossible to add a redirect without a language prefix if all of your sites have one configured.

E.g. you have two Sites configured with

```
/en
/de

```

and your marketing department tells you to add a redirect without a language specific prefix for

```
https://big-company.com/new-product/  -> https://big-company.com/en/products/security/brand-new/

```

and you know how these guys work … they'll change their mind next month and call you again to adapt the redirect then, so you don't want to add the rewrite on the server.

Until now you'll always get a 404 not found because the Site base can't be resolved and that happens always before the redirect handling.

This extension changes the order of middlewares and inserts the redirect handling before the site base resolving to make this work.

### Fuzzy target redirects

[](#fuzzy-target-redirects)

The extension adds a new field to redirects where you can append a fuzzy target for the redirect.

Lets say you are in the middle of a relaunch and have the following structure:

```
/institute-a/standard/about
/institute-a/standard/team
/institute-a/standard/contact

```

and your boss tells you to move all those pages to

```
/institute-a/special/…

```

after the relaunch.

Either you create all these rewrites on the server (nginx, Apache) or you create redirects in TYPO3 for every single page.

This is tedious work, so now you simply set a regular expression to match:

```
#^/institute-a/normal/?(.*)$#

```

and specify the first matched group to append:

```
/$1

```

in the new field and you're done.

Keep in mind that you have to take care, that the sub pages exist and have the same path as before. But since this should only be a temporary solution for a while, this shouldn't be a problem.

[![Fuzzy redirect target](Resources/Public/Screenshots/fuzzy_target.png)](Resources/Public/Screenshots/fuzzy_target.png)

###  Health Score

26

—

LowBetter than 43% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity13

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity53

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~513 days

Total

2

Last Release

1741d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/f4ea950f22b43e010ba4f0a6effb0928a6a1d11f64d36cec0d030b757bdfa85e?d=identicon)[wazum](/maintainers/wazum)

---

Top Contributors

[![wazum](https://avatars.githubusercontent.com/u/146727?v=4)](https://github.com/wazum "wazum (3 commits)")

### Embed Badge

![Health badge](/badges/wazum-umleitung/health.svg)

```
[![Health](https://phpackages.com/badges/wazum-umleitung/health.svg)](https://phpackages.com/packages/wazum-umleitung)
```

###  Alternatives

[aschmelyun/size

Simple PHP helper to convert bytes to different sizes

471.2k](/packages/aschmelyun-size)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
