in reply to Site file organization

I like how *unix file systems are organized, they have a place for everything:

server_root/bin etc htdocs lib tmp var/logs sessions templates
You have a place for your shell scripts (bin), it should not be accessible to web users; I keep there some script to tail error logs or to access database. Etc is the place for configuration files. All static documents, and may be cgi scripts, live under htdocs; every piece of software or data that you want to keep private should be outside of htdocs. Lib should contain all of your libraries and var is the place for logs, sessions, templates and other variable data.
I don't see why you need to make TEMPLATES accessible to every one, are you planning to protect them? Are you also planning a place with restricted access with administrative scripts and data?

HTH, Valerio