I like the Windows file structure that keeps program files separate from my data files. This allows me to organize my stuff logically by content and makes it easy to do regular backups of all of my stuff without needing to back up the program files, which are more easily replaced if necessary.

I have several websites that I've developed in ASP over the years and I keep the HTML, ASP, and other content files for each site in subfolders of a folder called "Web root". When I want to update a site, I first test the changes locally and then just FTP the modified files from the correct "Web root" subfolder to the online server.

Can this philosophy work for Drupal?

I'm now looking at revamping those sites in Drupal and I'd like to keep this separation of program and data files if I can. I've installed XAMPP and am getting ready to install Drupal. I've figured out how to move the MySQL "data" folder out of the MySQL folder and confirmed that the configuration works, so that's taken care of. Now the question is how to do the same thing with the site content files for Drupal.

What I want to do is keep the Drupal core along with downloaded modules and themes in XAMPP's "htdocs" folder where they're designed to go, but put content that I develop elsewhere outside the XAMPP folder. I think this means basically the contents of subfolders of the "sites" folder.

Can this be accomplished with configuration settings or symlinks or some other method?

I found the following related forum post that recommends symlinks:
http://drupal.stackexchange.com/questions/97007/store-drupal-files-outsi...
but it only talks about putting the contents of the "files" folder elsewhere. I don't know Drupal enough yet to know if that's enough or if I need to be able to put other contents of "sites" subfolders elsewhere as well.

Can someone point me to information on how to do this?

Thank you.