django+vue前后端分离项目部署

django+vue前后端分离项目部署,第1张

后端用的drf,使用的是uwsgi+nginx

进入服务器项目文件目录下,我的django项目放在了“/usr/myProjects/”目录下了。在managepy同级目录下创建uwsgiini文件,配置如下:

测试效果命令:

如果访问:xxxxxxxxxxx:8000 成功, 则uwsgiini配置成功

我的nginxconf所在位置是“/etc/nginx/nginxconf”
配置文件如下:

1、第一行

主要就是给nginx加权限,vue部署后使用history路由时会去掉地址后面的‘#’号,打包部署后不加权限会有bug。
2、如配置所示,有两个Server,分别部署了前端服务,和后端服务,值得注意的是两个Server用的是同一个服务器,监听的端口不同。
3、vue部署需要注意的是反向代理地址:

以及后面的端口问题

4、后端的Server需要注意location中的uwsgi_pass 后面的端口号要和uwsgiini中配的相同,否则监听不到

5、后端跨域问题。如果遇到跨域需要自己网上找配置,我的没遇到,可能是因为我在django的settings中配置了跨域。
6、django-suit后台管理样式崩了,需要改,但是api可以正常访问,这个有空再说
7、我开始后台监听的是8008端口,vue前端监听的是80端口,这样前端显示好看。然而问题出现了,虽然后台api可以正常访问,vue的本地开发环境也能正常运行且文字、资源均显示正常,但是前端vue打包线上部署后,文字信息显示正常,信息缺失8008端口,导致显示不出来。为图方便我选择了前端监听8008端口,后端监听80,部署后显示正常。原因不太清楚///////有空再说吧。
8、不要问我为啥都前后端分离了还部署到一个服务器上?穷,而且只是测试,没必要
9、此文仅适合入门

关于django后台admin(suit)缺失的修改(参考:django中文网: >通常用WSGI方式启动,ngix连接django方式。很少出现这样的情形。
如果内存耗尽,先要确定原因。如果你的虚拟机内存太少,就加内存。 如果内存超过1个GB,还有内存耗尽的问题,应该django里的view没有设计好。其中有内存泄露。
第一件事情当然是把这部分代码找出来改进就可以了。
最后一种办法,在不得已的情况下,定时重新启动django的wsgi server,这样就避免了内存耗尽,可以在晚上特定的时候来重新启动。这样影响最小。

环境:
python36
centos 7
Django111
用Django写了个小网站,只能在自己本地跑一跑!这怎么行?听说可以部署在云服务器上,这样别人就可以访问了!

从哪儿开始?就从Django开始吧!老规矩,按步骤:

这里不讲Django项目实施过程,假设你已经写了一个Django项目,并且在本地 127001:8000 能够跑起来。喏,给你个参考,项目大概长这样:
也就是项目目录下的settingspy文件,主要强调几个地方:
①关闭DEBUG模式:
②修改ALLOWED_HOSTS:
③配置静态文件存放路径:
修改好配置之后执行:
这个没什么说的。。。在自己的云服务器上装好这两个工具
安装好uwsgi后最好验证一下,验证方法:
创建一个testpy文件:

启动uwsgi服务器:

如果可以正常启动而不报错那就应该没问题,不放心的话再在终端验证一下:
在uwsgiini里进行如下配置:

找到nginx的配置文件夹,centos7的nginx配置文件在/etc/nginx下,该路径下有一个nginxconf总配置文件,还有两个文件夹/confd、/defaultd,我们将nginxconf复制一份到confd文件夹下,命名为nginxconf(或者项目名conf)进行如下修改(根据中文注释进行相应配置即可):

进入uwsgiini文件夹下执行:

在终端执行:

参考资料:


刘江的博客
博客园
知乎问答
无名Blog
自强学堂Django教程
Django文档
empty_xl Blog

如何使用Apache 和mod_wsgi 部署Django¶
用Apache 和 mod_wsgi 部署Django项目是一个第三方的,测试的方法来得到Django生产环境。
mod_wsgi是一个Apache模块,可以托管任何Python WSGI应用程序,包括Django。Django将与支持mod_wsgi的任何版本的Apache一起工作。
官方mod_wsgi文档是太棒了!它是所有关于如何使用mod_wsgi的细节的来源。您可能需要先从安装和配置文档开始。
Basic configuration¶
一旦您安装并激活了mod_wsgi,请编辑Apache服务器的>Gunicorn是一个被广泛使用的高性能的Python WSGI UNIX >

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/13444919.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-08-07
下一篇 2023-08-07

发表评论

登录后才能评论

评论列表(0条)

保存