一个由计算机名引起的Django启动错误

1 错误提示

某天,有小童鞋问他的django项目启动为什么会出错。

错误的图示如下:

错误内容是 “UnicodeDecodeError: 'utf-8' codec can't decode byte 0xc1 in position 2: invalid start byte”

一个新建的project,连代码都没有写,怎么就会出现字符编码的错误呢。而且是在内部的socket注册绑定的时候引发错误。百思不得其解。

2 错误原因

查了堆资料,网上说这个问题的好像不多,最后还是找到一篇文章有提及。原来是因为计算机名含有中文,Django的WEB服务在socket注册时会直接使用计算机名作为参数查询地址等相关信息。r如果windows(出错的是windows 11)的计算机名是中文,就引发了这个utf-8编码的错误。这里可以推断,windows 11的计算机名不是用utf-8编码的。

3 解决方案

知道原因就好解决了。将计算机名修改为英文字符就ok了。


PS:要做开发的童鞋,用户名,计算机名,项目目录,代码文件命名之类的,都养成习惯,不要用中文,这样可以避免很多不必要的麻烦。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值