This website stores cookies on your computer. These cookies are used to improve your website experience and provide more personalized services to you, both on this website and through other media. To find out more about the cookies we use, see our Privacy Policy.
Where as, /index.php/tools would be ~/tools with a condition that if the requested file doesn't exist try ~/concrete/tools
/index.php/tools/packages/PACKAGE_HANDLE/ would be ~packages/PACKAGE_HANDLE/tools ...and /index.php/tools/blocks/BLOCK_HANDLE/ could be either ~blocks/BLOCK_HANDLE/tools, ~concrete/blocks/BLOCK_HANDLE/tools, or ~packages/IRRELEVANT/blocks/BLOCK_HANDLE/tools
Basically the URI is a tool that automagically figures out the right physical location for your tool php file and loads it via the dispatcher, so the c5 API is still exposed.
If you were to request the file directly, the you wouldn't be able to use c5's API, and in most cases be denied outright thanks to this script: defined('C5_EXECUTE') or die("Access Denied.");
---thanks Isaac ( member: ijessup )