欢迎您访问365答案网,请分享给你的朋友!
生活常识 学习资料

Ubuntu18.04.1LTS下Nginx+uWSGI+Django项目部署

时间:2023-08-18

因为我图方便,直接使用云服务器(没成功重装了好多次),所以有些图片中出现的IP地址我就打马赛克了!请知悉!

建议

安装系统-检查python环境-安装django和项目依赖包-安装uWSGI-配置uWSGI-安装Nginx-配置Nginx启动参数-然后再启动uWSGI

Python 检查系统的Python环境

$ python3 -V$ pip3 -V$ pip3 install --upgrade pip #升级pip

Django

这个Django项目是《Python编程 从入门到实践》中的一个小项目!
这里用的pycharm直接同步到服务器,所以就没有不需要其他什么配置!
项目我分享在了阿里云盘:
[见评论区]
如何使用pycharm同步的话可以看看其他朋友的博客!

需要安装的pip包:

pip3 install django==3.2.9pip3 install django-bootstrap4==21.1

uWSGI 安装uWSGI

# 安装uWSGIpip3 install uwsgi# 查看uWSGI的版本,主要是为什么看看能不能直接运行uwsgiuwsgi --version

如果弹出来是找不到的话,就需要设置一下软链接
路径是我自己的路径,大家根据自己的路径选择!

设置软链接

如果上一步查看版本成功的话可以跳过此步骤!

ln -s 【目标目录】 【软链接地址】# 这里添加的是:sudo ln -s /home/ubuntu/.local/bin/uwsgi /usr/bin/uwsgi

创建测试文件

/home/ubuntu/test.py

def application(env, start_response): start_response('200 OK', [('Content-Type','text/html')]) return [b"Hello World!"]

运行测试文件

直接在/home/ubuntu/路径下输入以下命令:

uwsgi --http :8000 --wsgi-file test.py


直接尝试使用uWSGI运行项目:

uwsgi --http :8000 --chdir /home/ubuntu/learning_log/ --wsgi-file learning_log/wsgi.py --master --processes 4 --threads 2 --stats 127.0.0.1:8888

uWSGI配置

配置文件位置:
/home/ubuntu/learning_log/uwsgi/uwsgi.ini

[uwsgi]socket = 127.0.0.1:8000chdir = /home/ubuntu/learning_log/module = learning_log.wsgimaster = trueprocesses = 4vacuum = true

Nginx 安装Nginx

sudo apt-get install nginx

配置启动参数:

配置文件位置:

/etc/nginx/sites-enabled/default

server { listen 80; server_name 127.0.0.1 10.0.16.16; #这里也可以填写多个地址,也可以是服务器的地址,也可以是你的域名地址 #server_name 服务器的IP地址; charset UTF-8; access_log /var/log/nginx/learning_log_access.log; error_log /var/log/nginx/learning_log_error.log; client_max_body_size 75M; location / { include uwsgi_params; uwsgi_pass 127.0.0.1:8000; } }

配置完成后重启Nginx

sudo /etc/init.d/nginx restart

Nginx命令参考

/etc/init.d/nginx start #启动/etc/init.d/nginx stop #停止/etc/init.d/nginx restart #重启

Nginx文件位置参考

程序文件:/usr/sbin/nginx全局配置文件:/etx/nginx/nginx.conf访问日志文件:/var/log/nginx/access.log错误日志文件:/var/log/nginx/error.log站点配置文件:/etc/nginx/sites-enabled/default 总结

你发现这样做是不是显示502 Bad Gateway!
试试再启动uwsgi.ini

ubuntu@VM-16-16-ubuntu:~$ cd /home/ubuntu/learning_log/uwsgi/ubuntu@VM-16-16-ubuntu:~/learning_log/uwsgi$ uwsgi --ini uwsgi.ini

然后再刷新页面看看,是不是成功了???
最后:总感觉这样好像也不能托管项目啊!还得再学习一下,学完再更新。
2022-02-02 16:51:24

Copyright © 2016-2020 www.365daan.com All Rights Reserved. 365答案网 版权所有 备案号:

部分内容来自互联网,版权归原作者所有,如有冒犯请联系我们,我们将在三个工作时内妥善处理。