我目前正在使用屏幕并正在进行
sudo python manage.py runserver 0.0.0.0:80
然后关闭终端。看起来有点像黑客。这样做的正确方法是什么?
答案 0 :(得分:2)
runserver是一个开发服务器。你不应该在生产中使用它,正如https://docs.djangoproject.com/en/1.4/ref/django-admin/#runserver-port-or-address-port中所说:
请勿在生产设置中使用此服务器。它没有经过安全审核或性能测试。 (这就是它将如何保留。我们的业务是制作Web框架,而不是Web服务器,因此改进此服务器以便能够处理生产环境超出了Django的范围。)
您应该使用https://docs.djangoproject.com/en/1.4/howto/deployment/中给出的方法之一在生产中部署Django项目。我使用了带有Apache的mod_wsgi,带有nginx的gunicorn - 精确的解决方案取决于你和项目的要求,但是Django手册的部署部分经历了各种选项。
答案 1 :(得分:0)
这真的不是一个好主意;不应在本地开发机器之外使用内置开发服务器。 Look at the docs:
请勿在生产设置中使用此服务器。它没有经过安全审核或性能测试。 (这就是它将如何保留。我们的业务是制作Web框架,而不是Web服务器,因此改进此服务器以便能够处理生产环境超出了Django的范围。)
相反,你应该设置nginx + gunicorn / uwsgi或只是apache + mod_wsgi。
如果您的ec2实例完全被阻止来自外部世界的所有可能的通信(这不太可能),您可以使用screen
命令