You’re problem is servlet mappings. You’re used to paths like site.com/myFolder/index.cfm/foobar working because they work in Adobe ColdFusion. CF originally did this on JRun and now on a hacked up version of Tomcat. The problem is the servlet spec doesn’t allow a servlet filter to have more than one wildcard so the .cfm/ that Adobe uses won’t work on a “normal” servlet like stock Tomcat. You need to modify your web.xml and add a servlet mapping for every subfolder where you want to use SES URLs.
You also have an issue with rewrites. You also need to modify the default rewrites to work in a subfolder. Right now, the default ColdBox rewrite rules assume you’re in the web root. Also, you mentioned dropping in an .htaccess file but you didn’t specific if you were actually using Apache web server which is a requirement. Hitting Tomcat directly will not do you any good.
So, you can make your life a heck of a lot easier if you drop this Tomcat nonsense and use just CommandBox! Firstly, CommandBox has a dollop of fairy dust applies and it supports the SES URLs in a subdirectory so even Lucee users can get that amazing Adobe CF behavior out of the box. Secondly, our rewrites are easier to enable than any other web server.
start --rewritesEnable
Now, you will still need to modify the default rewrite rules to work in a sub folder. There’s sadly not a super good way for me to make that dynamic since there’s just too much ambiguity, but it’s still super easy with CommandBox.
Yeah, I haven’t installed Adobe ColdFusion, Railo, or Lucee in about 4 years now on my dev box but I use all of them a lot.
Things you don’t need (95% of the time)
Direct installation of Lucee/CF
Apache web server / IIS / Nginx
Tomcat
You can start up ad-hoc Lucee servers of any version in any folder on your drive, as many as you like with nothing but the CommandBox binary which requires no installation and is ~40Mb (additional automatic downloads apply for some engines).
And yes, CFConfig is the way to manage all of your settings from the CF admin. In fact, these three JSON files can define pretty much everything possible in your entire server setup.
box.json - app dependencies
server.json - Server setup, ports, host, memory, web server settings
.cfconfig.json - CF stuff like mappings, datasources, debug settings
The process for running a site for the very first time from scratch can potentially be:
git clone && cd folderName
box install
box server start
CommandBox also isn’t just for dev. There’s a growing number of people using it all the way through production, either in Docker, or just setup on VMs because it’s so easy to configure since everything is portable and requires no install.