Actually I found out that Slim is not even using PATH_INFO or PHP_SELF because I modified them, but it still throws a 404:
// FIX for Slim using PATH_INFO (or rather PHP_SELF instead of REQUEST_URI
$_SERVER['PHP_SELF'] = str_replace($_SERVER['PATH_INFO'], $_SERVER['REQUEST_URI'], $_SERVER['PHP_SELF']);
$_SERVER['PATH_INFO'] = $_SERVER['REQUEST_URI'];
404 Not Found
The application could not run because of the following error:
Details
Type: Slim\Exception\HttpNotFoundException
Code: 404
Message: Not found.
File: I:\dev\myproject\vendor\slim\slim\Slim\Middleware\RoutingMiddleware.php
Line: 93
Slim uses FastRoute as Router and FastRoute expects a decoded URL.
As shown in the README, this can be achieved using a call to rawurldecode(). See issue 154.
I had the same “problem” when upgrading von slim 3 to slim 4. The API was in use by several clients so I was not “allowed” to change the API-Call itself. Therefore I did a trick like this: