# Catch many URLs with a wildcard route

> End a route with * to match everything below a path, and keep specific routes for the exceptions.

Framework: total5
Product: Total.js 5 (total5@0.0.19)
Language: en
Content-SHA256: 22d7e15bb84e561a49e3f7be0e35f2ea48aceacffdf5c94d7f215e9dce31757e
Snapshot: c0700e321579725c5cf4f5ace1ad7d2866d1b4f93c24a63c0b41b6b7998e976c
Sources: total5-installed@total5@0.0.19
Review: not-recorded

A `*` as the last segment of a route matches any URL below that path. A route without the wildcard is more specific and wins, so you can handle the general case with the wildcard and add fixed routes for the exceptions. The request path is available in `$.url`.

```js controllers/docs.js
exports.install = function() {
	ROUTE('GET /docs/*', docs);
	ROUTE('GET /docs/changelog/', changelog);
};

function docs($) {
	$.json({ handler: 'docs', url: $.url });
}

function changelog($) {
	$.json({ handler: 'changelog' });
}
```
