It's in main.py, but routes.py is the correct way to override it. Works fine for me on a AWS-Linux instance
just specifying
BASE=dict(
default_application='mydefaultapp',
root_static = ['favicon.ico', 'robots.txt'],
),
You need to reload web2py, though, not just the app. But doesn't the admin page have a button for "reload routes"? Yes, at the top, to the right of "Change admin password".
/dps