I'm considering starting a website that allows customers to map a domain they own and control, to their page or subdomain in my site. Do I need to have an IP address for each customer domain? Is this something that webhosts will commonly allow me to do?
What you're talking about, at least on Apache web server, are called Virtual Hosts. Your customers/clients would simply need to point the A record for their domain at your server's IP address where you have the Virtual Hosts setup.
In your Apache configuration, you'll need to setup a new Virtual Host for each new domain you have coming in, which you can then send to whatever location on your server you desire.
There's lots of ways to skin a cat here. Just use an
Or make a simple index page with a redirect in the header:
Then place it in the root of their domain.