При чем тут реальные файлы? При том, что здесь исп

При чем тут реальные файлы? При том, что здесь используется переменная $uri. Как я писал выше, если файл не найден, то УРЛ меняется на /index.php?q=$1 Повторюсь:

# Именнованная лакация (правило)
    location @modx { 
        # выполняем подмену на index.php
        rewrite ^/(.*)$ /index.php?q=$1 last;
    }

Так как в большинстве случаев при ЧПУ файлов тупо нет, то постоянно и происходит подмена УРЛа на index.php. При этом и переменная $uri и принимает это значение. А если файл будет найден, то $uri не будет изменена, и будет иметь значение реально запрошенного адреса. Теперь понятно? Плагин конечно я тоже упростил. Изначально он был примерно такой:

$query = '/';
            
            $query_str = str_replace('&', '&',($_SERVER['QUERY_STRING']));  
            
            if(!empty($query_vars['q'])){
                $query .= $query_vars['q'];
                unset($query_vars['q']);
            }
            else{
                $query .= 'index.php';
            }
            $query .= "?";
            
            $vars = array();
            foreach($query_vars as $k => $v){
                $vars[] = "{$k}={$v}";
            }
            if($vars){
                $query .= implode("&", $vars);
            }
            $modx->log(1,  print_r($query, 1));
            $modx->cacheManager->set($query , $modx->resource->_output);

И то, что сейчас в плагине осталось — это публичный упрощенный вариант, для которого твои замечания очень обоснованный. Но для меня мой nginx-конфиг более актуальный :-)