(七)创建Django项目

  • (1)建立文件夹,存放网站
mkdir -p /data/wwwroot
  • (2)给uwsgi建立软链接,方便使用
ln -s /usr/local/python3/bin/uwsgi /usr/bin/uwsgi
  • (3)切换到网站目录/data/wwwroot,创建django
cd /data/wwwroot
django-admin.py startproject mysite

创建成功之后,/data/wwwroot下面就会多出一个mysite文件夹,我们的项目就在这个文件夹里。

  • (4)然后新建立一个名叫bbs的APP
cd mysite
python3 manage.py startapp bbs

有些朋友到这步可能会报错

ImportError: No module named ‘_sqlite3’ ;

  • 报错的解决办法如下:

    • 首先尝试:
pip3 install sqlite
pip3 install sqlite3

这里有些朋友可能还会遇到错误提示:

yum install sqlite-devel
然后提示安装成功 之后需要将Python基于代码的安装包重新编译一下,并重新安装之后,方可生效:
cd /usr/local/python3
./configure –prefix=python-install-folder
make & make install
重新执行程序就会发现原有的错误信息已经解决了。
  • 这里jacky做一个总结:

    • 在Python中调用sqlite的驱动或者类库不是通过pip来进行安装的,需要yum来进行安装器开发包,这个是需要注意的。
  • (5)添加static和templates文件夹

    • 进入项目文件夹/data/wwwroot/mysite,添加static和templates,分别用于存放静态文件和模板文件

  • (6) 编辑项目里mysite/settings.py文件
vim /data/wwwroot/mysite/mysite/settings.py

1、关闭DEBUG模式。

DEBUG = False

2、ALLOWED_HOSTS设置为* 表示任何IP都可以访问网站。

ALLOWED_HOSTS = [’*’]

3、在INSTALLED_APPS 列表里添加’bbs’APP

  • TEMPLATES里添加模板路径os.path.join(BASE_DIR, ‘templates’)

  • 尾部添加

    STATICFILES_DIRS = (

    os.path.join(BASE_DIR,‘static’),

    )

  • (7)在templates下添加index.html文件,输入下面内容
vim /data/wwwroot/mystie/templates/index.html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>数据分析部落</title>
</head>
<body>
<h1>hello,world!</h1>
</body>
</html>
  • (8)配置URL
vim /data/wwwroot/mysite/mysite/urls.py

  • (9)编辑bbs APP 下的 views

  • (10)启动项目
python3 manage.py runserver
  • (11)Django正常运行之后我们就开始配置一下uwsgi

    • 我们网站项目路径是 /data/wwwroot/mysite/,在项目根目录下创建

      mysite.xml文件,输入如下内容:
<uwsgi>
<socket>127.0.0.1:8997</socket><!-- 内部端口,自定义 -->
<chdir>/data/wwwroot/mysite/</chdir><!-- 项目路径 -->
<module>mysite.wsgi</module>
<processes>4</processes> <!-- 进程数 -->
<daemonize>uwsgi.log</daemonize><!-- 日志文件 -->
</uwsgi>
  • (12)配置nginx.conf文件
cd /usr/local/nginx/conf
  • 在/usr/local/nginx/conf/中先备份一下nginx.conf文件,以防意外
cp nginx.conf nginx.conf.bak
  • 然后打开nginx.conf,把原来的内容删除,直接加入以下内容:
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
server {
listen 80;
server_name www.lezhidata.com;
charset utf-8;
location / {
include uwsgi_params;
uwsgi_pass 127.0.0.1:8997; #端口要和uwsgi里配置的一样
uwsgi_param UWSGI_SCRIPT mysite.wsgi; #wsgi.py所在的目录名+.wsgi
uwsgi_param UWSGI_CHDIR /data/wwwroot/mysite; #项目路径 }
location /static/ {
alias data/wwwroot/mysite/static/; #静态资源路径
}
}
}

要留意备注的地方,要和UWSGI配置文件mysite.xml,还有项目路径对应上。

  • (13)进入/usr/local/nginx/sbin/目录
  • 执行./nginx -t命令先检查配置文件是否有错,没有错就执行以下命令:
./nginx

终端没有任何提示就证明nginx启动成功。可以使用你的服务器地址查看,成功之后就会看到一个nginx欢迎页面。

  • (14)进入网站项目目录
cd /data/wwwroot/mysite/
  • 执行下面命令:
uwsgi -x mysite.xml
  • 以上步骤都没有出错的话,进入/usr/local/nginx/sbin/目录,执行:
./nginx -s reload
  • (15)显示
  • 重启nginx ,然后在浏览器里访问你的项目地址!

部署Django到云服务器(centos+nginx+mysql+uwsgi+python3)【操作篇(2)】的更多相关文章

  1. 部署Django到云服务器(centos+nginx+mysql+uwsgi+python3)【操作篇(1)】

    开篇 笛卡尔说:"你不能教会一个人任何东西,你只能帮助他发现他自己内心本来就有的东西!" jacky能教你的,只能是经验和建议,要逆袭还得通过自己对数据的不断领悟,数据领域的技能都 ...

  2. 阿里云服务器 CentOS 安装Mysql 5.6

    下载:https://dev.mysql.com/downloads/file/?id=471181   第一步: 安装mysql5姿势是要先安装带有可用的mysql5系列社区版资源的rpm包 [ro ...

  3. Linux系统部署JavaWeb项目(超详细tomcat,nginx,mysql)

    转载自:Linux系统部署JavaWeb项目(超详细tomcat,nginx,mysql) 我的系统是阿里云的,香港的系统,本人选择的是系统镜像:CentOS 7.3 64位. 具体步骤: 配置Jav ...

  4. Java Web项目部署到阿里云服务器(ECS)

    本篇随笔只是记录博主第一次将自己的Java项目部署到阿里云服务器的大致过程,具体细节还请参考别的博文. 一.项目介绍 我做的项目是利用maven项目构建工具进行搭建基于SSM框架的代码共享管理系统,主 ...

  5. 【hexo博客搭建】将搭建好的hexo博客部署到阿里云服务器上面(下)

    一.部署到阿里云服务器 既然博客也已经成功在本地部署,然后主题也成功安装,接下来就可以部署到服务器上面了,如果你也想要魔改matery主题,可以去各种博客上面找一找大佬的教程,或者联系我,也可以让你少 ...

  6. 将nodejs代码部署到阿里云服务器

    概述 最近在做一个小项目,其中用nodejs做了个数据转发的接口,之后需要将这部分代码部署到服务器上面,并使用Nginx做反向代理.期间使用搜索引擎大量查阅了其他同鞋的经验,不过写的大多很笼统,因此踩 ...

  7. 阿里云Linux服务器安装 nginx+mysql+php

    阿里云Linux服务器安装 nginx+mysql+php步骤1.登录服务器2.下载安装包3.将安装包上传到服务器的/home目录下 注:使用rz sz命令进行本地和服务器间的上传.下载,安装命令yu ...

  8. Cacti监控服务器配置教程(基于CentOS+Nginx+MySQL+PHP环境搭建)

    Cacti监控服务器配置教程(基于CentOS+Nginx+MySQL+PHP环境搭建) 具体案例:局域网内有两台主机,一台Linux.一台Windows,现在需要配置一台Cacti监控服务器对这两台 ...

  9. javaWeb项目部署到阿里云服务器步骤 完整版

    记录web项目部署到阿里云服务器步骤 (使用 web项目.阿里云服务器.Xftp.Xshell),敬请参考和指正 1.将要部署的项目打包成WAR文件格式,可以在MyEclipse.Eclipse都可以 ...

随机推荐

  1. 使用PrintDocument定制打印格式

    虽然说使在IE上直接调用打印插件打印已经不常用,但是有时候还是会用到,这里就记录一下. 首先我们列出来我们的打印类 public class PrintService { //打印机名称 privat ...

  2. opencv 源码分析 CUDA可分离滤波器设计 ( 发现OpenCV的cuda真TM慢 )

    1. 主函数 void SeparableLinearFilter::apply(InputArray _src, OutputArray _dst, Stream& _stream) { G ...

  3. 解决cxf+springmvc发布的webservice,缺少types,portType和message标签的问题

    用cxf+spring发布了webservice,发现生成的wsdl的types,message和portType都以import的方式导入的.. 原因:命名空间问题 我想要生成的wsdl在同个文件中 ...

  4. Linux命令——sync

    参考:A Step-By-Step Guide to Using the Linux sync Command 前言 数据只有被读入内存才能被CPU所处理,但是数据又常常需要由内存写回磁盘当中(例如储 ...

  5. 调试freeradius 3.0 与microsoft AD通过LDAP认证的笔记

    首先来参考文章: a.https://blog.51cto.com/liqingbiao/2146832?utm_source=oschina-app 这个主要参考了基本安装.配置.测试 b.http ...

  6. Elasticsearch 7.x - IK分词器插件(ik_smart,ik_max_word)

    一.安装IK分词器 Elasticsearch也需要安装IK分析器以实现对中文更好的分词支持. 去Github下载最新版elasticsearch-ik https://github.com/medc ...

  7. jquey动画效果

    jquery的事件没有on,js的有. 1.show()  显示  由小变大缓慢显示 <html lang="en"> <head> <meta ch ...

  8. 基于k8s集群部署prometheus监控ingress nginx

    目录 基于k8s集群部署prometheus监控ingress nginx 1.背景和环境概述 2.修改prometheus配置 3.检查是否生效 4.配置grafana图形 基于k8s集群部署pro ...

  9. Luogu P1970 花匠

    Luogu P1970 花匠 本质上就是找最长的波浪序列. 因为考虑到第一个必选,所以可以让$lst=h[1]$. 此外,注意到$n=1$是要特判,其他情况下显然$ans\geq 2$,所以把$dir ...

  10. 请解释下在单线程模型中Message、Handler、MessageQueue、Looper之间的关系

    对于面试,每个职场人士都经历过,面试官更看中你对于技术的理解是否透彻,需要知其所以然,而实际工作中看中的工作效率,都是在使用API的角度来完成任务,当在一家公司呆久了有跳槽的想法时,个人的亲身经历就是 ...