PythonAnywhere 介绍
维基百科:
PythonAnywhere is an online Integrated Development Environment (IDE) and Web hosting service based on the Python programming language.
PythonAnyWhere 是一个提供项目云端托管,运行,在线编码的网站。
准备 django 版本:
- Python2.7
- Django1.9
- SemanticUI
- Xadmin
第一步:注册账号
在 PythonAnyWhere 注册一个账号,申请的是免费空间,所以注册的用户名就是这个网站的域名,username.pythonanywhere.com 就是我们的域名,用户名可以起得简单一点。
第二步:上传代码到 PythonAnyWhere
假定项目已 publish 至 github 上,在 Consoles 下,打开一个 consoles ,会出现一个命令行终端,将 github 上的项目 clone 至 PythonAnyWhere , 输入以下命令: git clone https://github.com/myusername/myproject.git
,等待项目上传成功。
第三步:创建 virtuallenv 及安装所需库
命令行里输入如下命令:mkvirtualenv --python=/usr/bin/python2.7 mysite-virtualenv
,激活虚拟环境:source myvenv/bin/activate
,在虚拟环境里一一安装项目所需要的库,比如 django,pillow,xadmin 等,如果项目里有 requirements.txt 文件,那就直接在命令行输入:pip install -r requirements.txt
。
第四步:创建 Database
在 Database 中新建 mysql 数据库,默认生成数据库格式 username$database_name ,有个美元符,再创建数据库密码,之后 django 配置会用到。
第五步:创建 Web app 和配置 WSGI 文件
Web 卡片项,选择手动配置,填完相关信息后容器 app 自动创建。看到 Code 选项,填入相关信息:
Source code:项目文件目录
Working directory:/home/username/
WSGI configuration file:/var/www/username_pythonanywhere_com_wsgi.py
打开 WSGI configuration file 这个文件,填入如下信息:
import os
import sys
path = '/home/myusername/mysite' #(含有manage.py的上一级目录)
if path not in sys.path:
sys.path.append(path)
os.environ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings'
###### then, for Django >=1.5:
from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()
###### or, for older Django <=1.4
#import django.core.handlers.wsgi
#application = django.core.handlers.wsgi.WSGIHandler()
wsgi 文件的配置完成。
第六步:配置数据库
进入项目中寻找 settings.py 文件,配置数据库:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'username$database_name',
'USER': 'username',
'PASSWORD': '数据库密码',
'HOST': 'username.mysql.pythonanywhere-services.com',
}
}
ALLOWED_HOSTS = ['username.pythonanywhere.com']
第七步:创建表和后台管理账号
在 consoles 中,激活虚拟环境创建表和超级用户,命令如下:
python manage.py migrate(创建表)
python manage.py createsuperuser(创建超级用户)
python manage.py collectstatic(收集静态文件js、css、图片)
第八步:配置 Virtualenv
Virtualenv 选项,键入之前创建的虚拟环境目录:
/home/username/my-virtualenv
Static files 选项,大多数 Django 项目都要用到 static 以及 media,像下面这样键入静态目录:
URL Directory
/static/ /home/username/my_drectory/my_project/static
/media/ /home/username/my_drectory/my_project/media
第九步:展示成果
在 Web 项 Reload 网站,如果上面的配置都正确的话,项目即可部署成功。
参考资料:https://help.pythonanywhere.com/pages/DeployExistingDjangoProject