将开发的Django应用程序导出到生产环境
我已经开发了一个django网络应用程序三个月了,现在想把它放到生产环境中使用。我现在用的是South这个工具来管理数据库的结构,但我不知道怎么把我的应用程序的数据库结构和内容,还有项目代码导出到另一个文件夹,以便设置我的生产环境。
有没有人知道怎么做呢?
谢谢。
3 个回答
将你的Django应用从开发环境迁移到生产环境的步骤
打开你的项目文件夹,找到
settings.py
文件,找到以下这一行:安全警告:在生产环境中不要开启调试模式!
DEBUG = False
把调试模式改成false。
把数据库的登录信息换成实际生产服务器的数据库信息,在你的
settings.py
文件中:DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'seocrawler', 'USER': '', 'PASSWORD': '', 'HOST': 'localhost', 'PORT': '' } }
完成后,把你的项目文件夹上传到服务器的指定文件夹中。
打开putty,输入你的服务器登录信息,然后会弹出一个终端窗口。
在终端中执行下面的命令,检查服务器上是否安装了python:
python -V
接着运行
django-admin --version
来检查是否安装了django,确保你开发项目时用的django版本和服务器上的版本一致,如果不一致,就安装正确的版本。现在使用
cd
命令进入包含manage.py
文件的项目文件夹。接下来运行
python manage.py showmigrations
,这会列出你的项目是否有待处理的数据库迁移。然后运行
python manage.py makemigrations
,这会把数据库表迁移到生产服务器的数据库中。接下来运行
python manage.py runserver 0.0.0.0:8000
,然后在浏览器中访问你的域名,比如www.example.com:8000
,测试一下你的网站是否正常工作。一旦你的网站正常运行,我们希望
python manage.py runserver
命令在终端关闭后仍然能继续运行(也就是说让这个命令在后台运行)。为此,运行
nohup python manage.py runserver &
,这会让命令在后台运行,即使putty终端关闭也不会停止。全部完成!现在你的服务器和网站都已经上线了。
享受吧!
我使用了这里记录的方法(点击查看)。按照这种方式,你可以有公共设置、生产环境设置、开发环境设置和测试环境设置。对我来说,这个方法很好用。