Clean URLs with Dynamic Routing

In the previous lesson, we learned how to create dynamic pages with query strings. With that, a link to one of our blog posts looks like this:

http://localhost:3000/post?title=Hello%20Next.js

But that URL doesn't look as clean as something like this:

http://localhost:3000/p/hello-nextjs

Setting up URLs like that is what this lesson will cover.

Before getting started, make sure you are using Next.js 9 or newer.