Letztenendes lag das Problem am Joomla-Framework.
Dass du dieses verwendest, hast du uns ja auch leider zuvor verschwiegen.
Das war doch offensichtlich …
Hier der Code:
defined('_JEXEC') or die('Restricted access');
… wenn man nicht nur genau hinguckt, sondern im Geiste auch hinterfragt :)