guide
Concepts
Url Rewrites
Sometimes the filepaths in your project don’t match the routes on your server.
Maybe you’re doing internationalization or you’re hosting your site on a sub-path.
To solve this, we can use URL rewrites.
For example, if we’re hosting a site on a basepath like
/my-app
, we could use the following URL rewrite.
<script context="module">
import { Router, createRouter } from '@roxi/routify'
import routes from '../.routify/routes.default.js'
const router = createRouter({
routes,
urlRewrite: {
toExternal: url => '/my-app' + url,
toInternal: url => url.replace(/^\/my-app/, ''),
}
})
</script>
<Router {router} />
For advanced projects you could even chain multiple URL rewrites
import { basepath, localization } from './my-url-rewrites'
const urlRewrite = [ basepath('my-app'), localization('fr') ]