我的网站搭建(第9天) 部署Django网站

  • 发布时间:2015年12月17日 16:20
  • 作者:杨仕航
* 该文是基于Python2.7开发的,最新Python3.x和Django2.x视频教程可以前往 >> Django2.0视频教程

* WebFaction于2021年9月15日永久关闭,感叹啊!


前面写了Django网站、买了域名、买了空间。今天就来部署Django发布网站。

打开WebFaction点击 Log in 登录你的帐号。这里为了方便描述,先假设几个东西:

  • 1、WebFaction账户名:ysh

  • 2、WebFaction应用名:yshblog_app

  • 3、Django工程名:yshblog

  • 4、Django版本号:1.9.0

  • 5、Python版本号:2.7

  • 6、数据库:Sqlite

这些后面会用到。

 

1、在WebFaction创建域名

点击菜单 DOMAINS/WEBSITES 中的 Domains

再点击 Add new domain 按钮新增一个域名(或者使用默认创建那个也行)。

Name(名称)填写你购买的域名(我就填写yshblog.com),其他默认即可,Save保存。

 

2、创建应用

点击菜单 DOMAINS/WEBSITES 中的 Applications

再点击 Add new application 按钮新增一个应用。

Name(名称)填写应用名,这里我填写yshblog_app,建议填写你的Django工程名加上"_app"。

App category(应用类别)选择Django。

App type(应用版本)这个根据自己的Django工程搭配,注意看Django的版本和Python的版本。

我选择 Django1.9 和 Python2.7的版本。最后点击Save保存即可。

 

3、配置网站

这里的配置网站是将域名和应用联系起来。

点击菜单 DOMAINS/WEBSITES 中的 Websites

再点击 Add new website 按钮新增一个网站。

Name(名称)写网站的名称,这里建议用Django工程名+“-django”。我这里填写yshblog-django。

Domains(域名)填写域名,这里写入前面第1步新建的域名即可。

Contents(内容)点击 Add an application下拉框,选择Reuse an existing application,再选择第2步创建的应用即可。

Save保存完成配置。

WebFaction也提供了相关搭建Django网站的帮助:https://docs.webfaction.com/software/django/index.html

新增的网站左下角可以看到该网站的IP地址,该地址后面用于后台连接。

 

4、ssh登录后台

登录后台用xshell软件(下载地址 解压密码:www.epinv.com)

其中XshellPortable.exe是ssh主程序,XftpPortable.exe是ftp程序(用于上传和下载文件)。

因为后台是centos版本的Linux系统,得用ssh方式登录。

 

根据上面的IP地址新建回话,用户名是你的WebFaction帐户名,密码也是WebFaction的账户密码。

先用XFtp程序登录,可以看到后台的目录。

上传你的Django整个工程目录到后台的 /home/ysh/webapps/yshblog_app 中。

注意其中ysh是对应的WebFaction帐户名,yshblog_app是第2步创建的应用名。

把这个Django工程目录和yshblog_app文件夹下的myproject目录同级。

myproject是我们第2步自动创建出来的Django工程。

这里我建议用7-Zip把整个Django工程文件夹压缩成tar文件,再上传。一个文件上传速度比较快。

tar文件可以在后台用tar命令解压 "tar zvxf 文件名"。

不得不说,后台操作需要考验你的Linux功底。

 

5、后台配置Django

用XshellPortable.exe打开ssh回话。

整个界面就是Linux后台操作界面。

起始目录是/home/ysh

 

(1) 安装django第三方类库

输入命令 easy_install-2.7 pytz ,回车。

这个pytz是必要的,django后台查询要用到。

由于python是2.7的,easy_install也要用2.7。这个2.7是WebFaction预留的版本其中之一。

同样你还可以安装其他第三方类库,例如评论库 easy_install-2.7 django-contrib-comments

 

(2) 修改apache2的配置

输入命令 cd webapps/yshblog_app ,回车。

进入应用的文件夹输入命令 vim apache2/conf/httpd.conf ,回车。

进入apache2配置文件编辑。按字母i,开启编辑。

把httpd.conf中全部 myproject 的字样改成自己的Django工程名,我这里改成yshblog,退出保存即可。

编辑完成按Esc退出编辑,在输入:wq退出文件。

 

(3) 设置静态目录

这个静态目录要设置,不设置的话是访问不到我们生产环境下设置的静态文件。

输入命令 vim yshblog/yshblog/settings.py ,回车。

编辑Django工程的配置文件。

添加一行设置:

STATIC_ROOT = '/home/ysh/webapps/yshblog_app/yshblog/static_app/'


退出保存文件。对应的帐户名和应用名等,记得对应改一下成你自己的。

输入命令 python2.7 yshblog/manage.py collectstatic ,回车。该命令是收集静态文件到刚刚设置的目录static_app中。

输入命令  vim apache2/conf/httpd.conf ,回车。进入apache2配置文件编辑。

在LoadModule部分,加入一行 LoadModule alias_module modules/mod_alias.so 在最后加入如下设置

   Alias /static/ /home/ysh/webapps/yshblog_app/yshblog/static_app/
   <Directory "/static">
       Require all granted
   </Directory>


把访问静态文件的链接引到刚刚设置的static_app目录中退出保存文件。

对应的帐户名和应用名等,记得对应改一下成你自己的。

 

最后,重启一下apache2服务即可看到效果。

输入命令 /home/ysh/webapps/yshblog_app/apache2/bin/restart,回车。

大功告成!在浏览器输入网址,打开你的网站看看效果。

上一篇:Access vba导出数据到Excel方法总结

下一篇:我的网站搭建(第8天) 部署准备

评论列表

智慧如你,不想发表一下意见吗?

新的评论

清空