Hosting a Django site isn’t quite the same as the average PHP website. As a result, a lot of low-cost and specialist hosting providers simply don’t allow you to run your Django application.
What options are available?
There are probably thousands of options, but lets group them as follows
These guy’s host everything, PHP, Python, Ruby. Perhaps even .NET or Classic ASP on some of their packages. Great for small sites.
Hosting just Django, or maybe just Python and as a result Python web frameworks. You should probably be able to expect better support for these than a standard host…although this is obviously not something you can guarantee.
VPS or Cloud
Usually giving you full access to the operating system so you can configure everything, although you maybe need configure everything. Some providers have templates Django (The AWS Marketplace for example).
Full hardware that’s yours (or you’re renting it). This is not shared and a hardware fault can take you offline for days while it’s being repaired, but you do often have more power to hand for a lower cost. VPS or cloud hosting could also suffer from this downtime, but many of those providers are designed with this fact in mind and will self-heal within minutes.
These are a little different to the hosts above offering automatic scaling. Amazon (Elastic Beanstalk), Google (App Engine), Microsoft (Azure) are all capable of hosting your application. The amount of resource available to you will grow and shrink with the change in traffic to your site.
So, lets see some providers
The official Django wiki provides a list of providers, some of which not only support Django are specifically setup to host it. While the list likely isn’t every provider out there, you will likely find one to fit your requirements.
This site is setup on a VPS provided by Linode. A VPS is a different beast to a standard web host, however the extra controls you get by setting up a VPS may be helpful…or maybe required by you. Again, the Django wiki provides a list of VPS providers.