Can Django's development server route mutliple sites? If yes, how?
No, you can't. 
The SITE_ID is cached in various places, so you can't change it at runtime. You need a separate process for each site, but you can't bind more than one process to a single port. Neither can the development server act as a reverse proxy for separate processes. 
Running each site on a different port is the closest you can get. This is what happens with any HTTP-based app server, but in a production environment you use a reverse proxy to forward all requests from port 80 to the appropriate port for that site.
I'm starting with Django and want to try out the features of django.contrib.sites. I have added some aliases for 127.0.0.1 in my /etc/hosts, and can run different sites by providing a DJANGO_SETTINGS_MODULE when running manage.py runserver.
What I haven't managed to do is to have both sites available at once, on the same port. I have seen solutions that use WSGI and Apache or similar, but none using the development server.
Can the Django Development server serve multiple sites at once, switching by domain name, or is the nearest I'll get to start multiple servers on different ports?