Как использовать NGINX try_files, не меняя местоположение браузера для клиента?

Как использовать NGINX try_files, не меняя местоположение браузера для клиента?

Я использую nginx try_filesдля Server-Side-Rendering. Поскольку GET-параметры влияют на результирующий html, я хочу использовать try_files, чтобы проверить, есть ли у меня предварительно отрендеренная версия с соответствующей строкой запроса (файл сохранен в /posts/?page=5/index.html)

У меня есть следующий оператор try_files:

try_files $uri/$is_args$args/ $uri $uri/ @ssr;

Это работает, но клиент перенаправляется на страницу, www.page.com/posts/?page=5которая включает слеш подкаталога, который у меня есть. Это приводит к тому, что браузер в конце получает 404, потому что этот пост не существует.

Как я могу использовать try_files, как я это сделал, но без фактического перенаправления клиента? Для ясности: я хочу обслуживать файлы откуда угодно с помощью try_files, но не давать клиенту знать, какой файл обслуживается, это не дело браузера в моем случае.

Есть ли способ этого добиться?

Связанный контент