Lieber pl,
Indem er es requestet: http://example.com/agent.php
das kann er nur, wenn diese Datei über die URL erreichbar ist. Liegt sie außerhalb des Document_Root, ist das eben nicht möglich. Daher auch die Empfehlung, Dateien so abzuspeichern, dass sie mit einer URL nicht erreichbar sind.
Und gegen Angriffe wie http://example.org/../../../../../../../../etc/.shadow sollte es längst wirkungsvolle Mechanismen geben, für die der Hoster zuständig ist, nicht das Script-Kiddie, das ein Upload-Spielchen baut.
Liebe Grüße,
Felix Riesterer.