uWSGI部署

1. 安装uWSGI

# 直接使用pip安装
pip install uwsgi

# 查看版本
uwsgi --version
# 2.0.19.1

2. 验证uWSGI

新建文件test.py

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

执行启动中间件命令

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

打开浏览器访问http://localhost:8000,如果返回Hello World代表uwsgi安装和配置没有问题了。

配置外网访问: 如果需要在主机上访问虚拟机部署的项目需要绑定特定IP。

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

3. uwsgi 部署 Django

如果项目时采用前后端分离架构,那么在配置时使用–http-socket参数。

uwsgi --http :8000 --file mysite/mysite/wsgi.py

可能出现的问题: 1. 找不到模块

ModuleNotFoundError: No module named 'mysite.settings'

解决方案:是在设置环境变量前项目添加至系统目录。打开项目wsgi.py文件,添加如下代码:

import sys
path = '/home/path/to/project'
if path not in sys.path:
    sys.path.append(path)
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'mysite.settings')

更通用的设置方法。

import sys
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
if BASE_DIR not in sys.path:
    sys.path.append(BASE_DIR)
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'mysite.settings')

可能出现的问题: 2. sqlite有误

django.core.exceptions.ImproperlyConfigured: SQLite 3.8.3 or later is required(found 3.7.17).

django需要使用sqlite 3.8.3版本,实际操作系统带的版本为3.7.17。解决方法是升级操作系统的sqlite版本,方法参考 https://blog.csdn.net/qq_39969226/article/details/92218635

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值