Change server root to set locale but keep routes

Given the following URL as a base:

http://www.domain.com/resources/1

I want to insert locale information after the server like this:

http://www.domain.com/en/resources/1 http://www.domain.com/es/resources/1

Has anyone thought of a way to "expand" the server root to include additional information in the path, so that instead of the server being:

the server is:

?

I'm wondering if rack is the best way to intercept the request to Rails and "extend" the server portion of the URL to include the locale information in a way that won't break my Rails routes.

I've read many of the Rails i18n articles out there, and am aware of methods of determining the locale from TLDs, subdomains, or query strings. I specifically want to explore this option of including the locale at the beginning of the path without breaking my routes helpers (i.e., resources_path(@resource_id), etc.).

Any thoughts?