手机版 欢迎访问it开发者社区(www.mfbz.cn)网站

当前位置: > 开发

个人视觉网站搭建记录

时间:2021/3/30 7:30:41|来源:|点击: 次

django+nginx+uwsgi+bootstrap简单个人网站的搭建

  • (一)云服务器
  • (二)用django处理后端业务逻辑,bootstrap进行前端页面交互
  • (三)云服务器进行基本环境配置
  • (四)nginx+uwsgi云服务器部署
  • (五)结语

这个网站主要是用来对Paddlehub和Paddlex上面的一些图像预测模型进行web可视化,也就是将这些模型部署在web端

这里附上我的网站链接,欢迎小伙伴们体验:传送门

这里没有使用域名了,因为我购买的域名是中文的

具体的实现步骤大致如下:

  1. 首先你需要一台云服务器
  2. 用django处理后端业务逻辑,bootstrap进行前端页面交互
  3. 对云服务器进行基本环境配置
  4. nginx+uwsgi云服务器部署

这里的网站搭建并非网站搭建的最优解,仅供参考

(一)云服务器

这里购买的是阿里云服务器,还是比较便宜的,我购买的是2核2G,20%性能基线的服务器,这个内存还是太小了,以至于在后面跑OCR的时候,直接内存爆炸

(二)用django处理后端业务逻辑,bootstrap进行前端页面交互

这里就不具体解释django和bootstrap的代码逻辑了

这里附上整个项目百度网盘链接:传送门
提取码:xvfm

你们提取文件后,会发现文件目录是这样的
在这里插入图片描述

其中del.py是用来删除用户上传的图片文件的,static文件夹是用来存放静态文件的,run.log和uwsgi.ini是对服务器进行部署的配置文件,nohup.out是django进行无挂断服务后生成的文件,其它都是运行django生成的文件(PS:我django版本为1.11.28),当然django项目的配置,在里面还有一些重要的点,说来话长,这里主要讲的的是django项目的部署

所以下面具体的业务逻辑代码就不具体讲解了,会django的小伙伴可以很简单读懂我的django项目,不会的话我一句两句也讲不完。想入门django的小伙伴可以看看这个视频
视频传送门

(三)云服务器进行基本环境配置

在阿里云购买云服务器后,这里我使用的是Ubuntu 20.04.1系统,然后安装宝塔面板,当然这里不安装宝塔面板也是可以的,但因为安装宝塔面板后它会给你安装一些配置(包括nginx),所以这里就不单独安装nginx了。如果是单独安装nginx,则可以按照下面步骤安装:

sudo apt-get update
sudo apt-get install nginx

安装完成后。用你电脑的浏览器访问你的服务器的公网ip地址,看看安装成功没有!换成你自己的公网ip地址之后出现下图,就可以认为成功了。
在这里插入图片描述

然后是安装anaconda,并且创建虚拟环境,并且配置paddlehub和paddlex运行的环境。

最后安装uwsgi,这里是真的坑,这库是真的难安装,下面是具体的安装步骤:

 conda config --add channels conda-forge
 conda install -c conda-forge libiconv
 conda install uwsgi

这一切配置好后,下面就是将我们的django项目部署到云服务器了

(四)nginx+uwsgi云服务器部署

首先是将你的django项目上传到云服务器,上传的方法有很多种(宝塔面板也可以),百度一大堆

下面就是修改nginx的配置文件了,首先找到nginx.conf配置文件
1.如果你安装了宝塔面板,这文件就在
在这里插入图片描述
2.如果你是自己安装的nginx,那么这个文件大概率在/etc/nginx下

下面就是修改配置文件了,下面是将nginx.conf内的server代码替换为下面的代码

server {
listen 80;
server_name 39.98.118.30;
charset utf-8;
location /static {
alias /home/djangoProject/static;
}
 
location / {
include /www/server/nginx/conf/uwsgi_params;
uwsgi_pass 127.0.0.1:8000; }
 
}
include /www/server/panel/vhost/nginx/*.conf;
}

在这里插入图片描述
这里需要注意的是在第三个红色框圈起来的部分uwsgi_params一般和nginx.conf在同一个文件夹下

配置完后,在终端输入

nginx -t

出现下面的提示消息表示,则表示没有基本配置错误
在这里插入图片描述

输入无误后,重启nginx

sudo service nginx restart

然后在自己django项目下创建uwsgi.ini文件和一个run.log(非必须)文件
在这里插入图片描述

在uwsgi.ini配置文件内,配置如下内容:

[uwsgi]
chdir = /home/djangoProject
module = djangoProject.wsgi:application 
socket = 127.0.0.1:8000 
master = true         
daemonize = /home/djangoProject/run.log
disable-logging = true

在这里插入图片描述

disable-logging = true 表示不记录正常信息,只记录错误信息,否则你的日志可能很快就爆满了!

然后回到自己django项目下,找到settings.py文件

DEBUG = False
ALLOWED_HOSTS = ['*']

做完这些后,你只要在浏览器中输入自己是在django项目中设置的url,就可以登陆自己的网站了

但是,你会发现,静态文件无法加载,那么你还需要修改以下文件
在你的django项目下,修改urls.py文件

from django.views import static ##新增
from django.conf import settings ##新增
from django.conf.urls import url ##新增


url(r'^static/(?P<path>.*)$', static.serve,
      {'document_root': settings.STATIC_ROOT}, name='static'),

在这里插入图片描述

cd到manage.py文件所在的位置,然后在终端输入:python manage.py runserver 0.0.0.0:8000

python manage.py runserver 0.0.0.0:8000

好的,至此大功告成

最后就是,为了让django项目在后台无挂断运行,则需要在终端输入:

nohup python manage.py runserver 0.0.0.0:8000

浏览器中输入django项目设置的url地址,就可以看到网站页面了
在这里插入图片描述
最后,这里再贴上我的网站链接:
网站传送门

(五)结语

木有了

如果有什么错误的地方,还请大家批评指正。最后,希望小伙伴们都能有所收获。码字不易,喜欢的话,点赞关注一波在走吧

在这里插入图片描述

Copyright © 2002-2019 某某自媒体运营 版权所有