0

I have developed a django application that I now need to deploy on Windows Server (which may also be hosting various other web application I don't know about). The application I've developed will only be used internally.

Please excuse the naive question -- I'm completely new to Windows Server, but...

There are lots of articles around about running Django under IIS, and references to e.g. FastCGI. Do I actually need to do that though? On my personal windows machine I just installed Django and my app works fine accessed via port 8000. What stops me just doing the same on Windows Server in a production environment? What's gained by actually running under IIS?

Thanks!

  • I am assuming you can't install apache can you? – Paulo Bu Feb 17 '14 at 10:40
  • That is article on [DjangoProject](https://code.djangoproject.com/wiki/DjangoOnWindowsWithIISAndSQLServer) . It was quit old (Python 2.5 and django 0.95) But you may find something useful in there. – Mp0int Feb 17 '14 at 10:49
  • I found a newer documentation for [Installing Django on Windows](https://code.djangoproject.com/wiki/WindowsInstall) including IIS usage – Mp0int Feb 17 '14 at 11:01
  • 1
    Some reasons here: https://docs.djangoproject.com/en/dev/ref/django-admin/#django-admin-runserver Dev server is insecure and not performant for production. – arocks Feb 17 '14 at 11:12
  • Thanks all. My app is only going to be used by half a dozen users, and probably only accessed 10 or 20 times a day. Are there any concrete reasons why the development server wouldn't be suitable? Or put another way, given that I have such low requirements on performance / scalability, what does a production server like IIS / Apache gain me? The only thing I do care about is my app being resilient -- e.g. if Django crashes or something I want it to autorestart, but I don't know that the webserver helps with that? – user3313497 Feb 18 '14 at 09:18

1 Answers1

0

You should read the text at the link that arocks posted:

DO NOT USE THIS SERVER IN A PRODUCTION SETTING. It has not gone through security audits or performance tests. (And that’s how it’s gonna stay. We’re in the business of making Web frameworks, not Web servers, so improving this server to be able to handle a production environment is outside the scope of Django.)

Daniel Roseman
  • 588,541
  • 66
  • 880
  • 895
  • Thanks. My app is only going to be used by half a dozen users, and probably only accessed 10 or 20 times a day. Are there any concrete reasons why the development server wouldn't be suitable? Or put another way, given that I have such low requirements on performance / scalability, what does a production server like IIS / Apache gain me? The only thing I do care about is my app being resilient -- e.g. if Django crashes or something I want it to autorestart, but I don't know that the webserver helps with that? – user3313497 Feb 18 '14 at 09:19