Building a TYPO3 extension in Extbase/Fluid

Problems with RealURL and cHash

note that since T3v9 RealURL is no longer needed – finally, in 2018 (!!), you can set up human-readable URLs within the TYPO3 core

If you are configuring RealURL to show your plugin detail pages with nice URLs you might receive the following error message when you call such a page:

“Page not found: Reason: Request Parameters could not be validates (&cHash Comparison failed)”

In this case make sure you are adding every GET parameter to your links that you have configured in your RealURL postVarSets array. In my case it was a calendar extension plugin that was able to display a detail page for either an event or an event location. My RealURL configuration contained both variables:

...
'GETvar' => 'tx_yourext_yourplugin[events]',
...
'GETvar' => 'tx_yourext_yourplugin[locations]',
...
...

In order to make both detail views possible without the above mentioned error message, add an empty locations GET variable to your events and vice versa:

?tx_yourext_yourplugin[controller]=Events&tx_yourext_yourplugin[action]=show&tx_yourext_yourplugin[events]=81&tx_yourext_yourplugin[locations]=& ...

This example calls the Events controller, thus the detail view for the event with UID=81. The location will be ignored by the plugin but will be added to the cHash.