把你开发的网站免费发布到互联网上(2)

前几天,我们介绍了通过 PythonAnywhere 在互联网上创建一个站点:
把你开发的网站免费发布到互联网上(1)
本篇是上一篇的延续,来讲一讲如何将已有的 Django 项目部署到 PythonAnywhere 上。
部署已有项目会稍微麻烦一些,依照惯例,先上流程图

image.png

1. 注册登录

同上篇

2. 新建 bash 控制台

我们需要将 GitHub 上的代码克隆过来,所以在 Consoles(控制台)下我们新建一个 bash 控制台。

image.png

点击 bash 进入一个类似 cmd 的操作界面。

  1. 从 GitHub 上传代码

PythonAnywhere 上已经预装好了 git,所以只需在 bash 控制台下,使用 git clone 命令将 GitHub 的代码上传到服务器。

git clone https://your.github.site

对 git 操作有疑问的可以看看这份《git - 简明指南》

4. 建立虚拟环境

继续在 bash 控制台下操作。代码示例如下:

#进入项目文件夹
cd mysite
virtualenv --python=python3.5 myvenv
source myvenv/bin/activate

其中 mysite 是你的项目名,myvenv 是你的虚拟环境目录名。

5. 下载所需安装包

接下来,使用 pip 下载项目中使用到的库,最基本的就是 django。

注意:每个人的项目中安装的库可能不一样,所以一定记得将所有项目中用到的库都下载。比如处理图片(如添加头像)用到的 Pillow,操作 MySQL 使用到的 pymysql 等。

pip install django
pip install pillow

6. 迁移数据库并创建管理员账户

创建数据表。当然需要预先配置好 MySQL 并建好库。

python manage.py migrate

创建管理员,按要求输入账户及密码。

python manage.py createsuperuser

到此,关于 bash 控制台的操作告一段落。

7. 修改 setting文件

进入到 Files 栏目中,编辑 settings.py 文件,修改其中的 ALLOWED_HOST 值,把你项目的域名添加进去。

修改示例:

ALLOWED_HOSTS = ['username.pythonanywhere.com']
image.png

注意:使用 MySQL 的同学还需要修改 settings.py 中 DATABASE 的设置。

8. 新建 Web-app

进入 Web 栏目,选择

Add a new webapp -> next -> Manual Configuration -> Python3.5 -> next

比较重要的两步截图如下:

image.png

9. 配置 WSGI

  • 按照要求填写正确的项目文件夹
  • 修改 WSGI 文件

修改 WSGI 配置文件,注意填写正确的 path 路径。

image.png

以下图中的信息为例,settings文件的完整路径为:

/home/zx576/zxsite_v0.3/mysite/settings.py

那么在文件中应该如下图所示填写

image.png

10. 其他的 web 设置

最后我们再设置一下虚拟环境路径,以及静态文件路径,本地项目中有 media 文件的小伙伴仍需要设置 media 路径。

结果如下图所示:

image.png

11. 展示

最后“Reload”一下,就开开心心去查看自己的网站吧!

下面是我做的半成品(捂脸逃:

image.png

12. 总结

以上就是将已有项目部署到 PythonAnywhere 的整个流程,回顾整个流程,拢共分三步:

  1. 上传代码
  2. 配置代码
  3. 配置环境

都是不难的知识,但每一步都有一些细节需要我们去认真对待,最后才能搭出自己的网站。
魔鬼在细节,编程之事大抵如此。
附上演示项目供参考:
网站地址 : http://zx576.pythonanywhere.com


Crossin的编程教室
微信ID:crossincode
论坛:http://bbs.crossincode.com
QQ群:522415386

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,384评论 6 497
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,845评论 3 391
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,148评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,640评论 1 290
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,731评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,712评论 1 294
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,703评论 3 415
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,473评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,915评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,227评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,384评论 1 345
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,063评论 5 340
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,706评论 3 324
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,302评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,531评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,321评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,248评论 2 352

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,647评论 18 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 172,028评论 25 707
  • 我是日记星球212号星宝宝万儿,我在参加日记星球21天蜕变之旅,这是我在日记星球写的第215篇日记。 1、大豆异黄...
    万儿阅读 874评论 0 2
  • 今天和友小聚,共进晚餐,偶然间谈及好心会不会有好的回报,我一时语塞 友亦是一普通女人,按时上下班...
    玉知未来阅读 164评论 2 0
  • 同性恋这个词大家都不陌生,甚至每次提到时大多数人都是厌恶,恶心,,, 但同性恋真的有错吗?我国作为一个传统国家,对...
    南山最相思阅读 382评论 0 1