Project

General

Profile

Actions

Story #89958

closed

Extbase Action Links not working when routing active

Added by Philipp Wrann over 4 years ago. Updated about 4 years ago.

Status:
Closed
Priority:
Should have
Assignee:
-
Category:
Link Handling, Site Handling & Routing
Target version:
-
Start date:
2019-12-16
Due date:
% Done:

0%

Estimated time:
TYPO3 Version:
9
PHP Version:
7.3
Tags:
routing
Sprint Focus:

Description

Hi,

I set up a new project (nginx, php 7.3, mysql) using docker containers, went through the installation wizard and now - trying to build the website - a basic extbase usecase is not working because the plugin arguments are not mapped from the query string!

When installing the news extension the same happens. I can render a list+detail plugin and when i click the news record, the correctly generated link (/path/to/site?tx_news_pi1[action]=detail&tx_news_pi1[controller]=News&tx_news_pi1[news]=1&cHash=123...) results in extbase rendering the list again (so the query is ignored).

What do i have to configure to make extbase respect the unmapped query params?

I mean.... Where are my query params gone? Why are they "lost" when the controller tries to map them (AbstractController::mapRequestArgumentsToControllerArguments)?

IMHO this should work like: As long as no routing is configured it SHOULD WORK with query params, so

/path/to/page?tx_ext_pi[foo]=bar&cHash=123...

should be a valid URI dispatching the extbase plugin with the parameter [foo]=bar

The actual behaviour is simply broken - or i missed some important configuration part (that is not very obvious!)

So, please help me to find my mistake or - in case the described behavior is intended - create an issue because this must be a bad a joke.

See also:
https://stackoverflow.com/questions/59353353/typo3-9-lts-routing-breaks-extbase-action-links

Actions #1

Updated by Philipp Wrann over 4 years ago

  • Tracker changed from Bug to Story
  • Category changed from Extbase to Link Handling, Site Handling & Routing

Okay, after hours of debugging i found the error in the nginx config.

I dont know if this is an error on my side or if some optimization could be done in typo3, anyway the issue was:

Not working nginx directive:

    location / {
        try_files $uri $uri/ /index.php$query_string;
    }

Had to change it to

    location / {
        try_files $uri $uri/ /index.html /index.php$is_args$args;
    }
Actions #2

Updated by Georg Ringer about 4 years ago

  • Status changed from New to Closed

closed as resolved

Actions

Also available in: Atom PDF